Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Cast shadows on the Moon: a horizon map from LOLA

Abierto
#211 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
35/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
javascript, three.js

Línea de trabajo

Read js/scene/Planet.md under relief and CESIUM.md under relief on the Moon's tiles, then inspect tools/moon/lolaNormalMap.py and the mesh material and tileset sunlitShader entry points. Build horizon maps from the LOLA DEM and apply the shadow term consistently to both render paths; decide whether to include the higher-resolution normal map. Done means rims shadow floors near the terminator on both views, moon-quarter stays in bounds, and the recipe rebuilds the maps.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement track:solar-system

Proposed in #192's comment (section 3) and left open by #199 and #206; see Planet.md, relief ("No cast shadows yet") and CESIUM.md, relief on the Moon's tiles ("Not done: cast shadows").

Problem

The Moon's normal map (#199, on Cesium's tiles by #206) lights each texel by its own slope, which makes crater walls light and shade along the terminator. A slope can't make a rim shadow its floor, and in the last few degrees of Sun the real floors are black, the terminator's best-known look.

Proposal

A horizon map from the same LOLA DEM: the horizon's elevation in 8 azimuths per texel, in two RGBA 2048×1024 textures (about 2–4 MB, so Git LFS under public/large/moon/ with dataUrl; AGENTS.md, data policy). One shadow term in the surface shader, in both the mesh's material and the tileset's sunlitShader (so both sides of the swap match; moon-quarter parity). The recipe goes in tools/moon/ next to lolaNormalMap.py, and in Planet.md.

A 4096×2048 normal map (1.4 MB, LFS) would hold detail to a 1.3° Moon; decide whether to do it with this.

Done when

At the occultation view, rims shadow their floors near the terminator on both celestiary's Moon and Cesium's tiles, moon-quarter stays inside its bounds, and the recipe rebuilds the maps.

Related: #192, #199, #206, #205.

Lenguaje dominante
JavaScript
Estrellas
55
Forks
4
Merge medio
10 h 12 min
PR fusionados (30 d)
134

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de celestiary/web

Todos los issues de celestiary/web

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.