Sistema de convergencia para LOGO MODE (resolución escalable)
Implementa sistema adaptativo que evita interrupciones prematuras en resoluciones altas. El timing ahora se ajusta según convergencia de partículas en lugar de usar intervalos fijos. Cambios: - Ball: getDistanceToTarget() para medir distancia a objetivo - Engine: shape_convergence_, logo_convergence_threshold_ y tiempos escalados - defines.h: LOGO_CONVERGENCE_MIN/MAX (75-100%) - updateShape(): Cálculo de % de pelotas convergidas - toggleShapeMode(): Genera threshold aleatorio al entrar en LOGO - setState(): Escala logo_min/max_time con resolución (base 720p) - updateDemoMode(): Dispara cuando (tiempo>=MIN AND convergencia>=threshold) OR tiempo>=MAX Funcionamiento: 1. Al entrar a SHAPE en LOGO: threshold random 75-100%, tiempos escalados con altura 2. Cada frame: calcula % pelotas cerca de objetivo (shape_convergence_) 3. Dispara acción cuando: (tiempo>=MIN AND convergencia>=threshold) OR tiempo>=MAX 4. Resultado: En 720p funciona como antes, en 1440p espera convergencia real 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -211,10 +211,14 @@ constexpr int DEMO_LITE_WEIGHT_IMPULSE = 10; // Aplicar impulso (10%)
|
||||
// Configuración de Modo LOGO (easter egg - "marca de agua")
|
||||
constexpr int LOGO_MODE_MIN_BALLS = 500; // Mínimo de pelotas para activar modo logo
|
||||
constexpr float LOGO_MODE_SHAPE_SCALE = 1.2f; // Escala de figura en modo logo (120%)
|
||||
constexpr float LOGO_ACTION_INTERVAL_MIN = 3.0f; // Tiempo mínimo entre alternancia SHAPE/PHYSICS
|
||||
constexpr float LOGO_ACTION_INTERVAL_MAX = 5.0f; // Tiempo máximo entre alternancia SHAPE/PHYSICS (más corto que DEMO)
|
||||
constexpr float LOGO_ACTION_INTERVAL_MIN = 3.0f; // Tiempo mínimo entre alternancia SHAPE/PHYSICS (escalado con resolución)
|
||||
constexpr float LOGO_ACTION_INTERVAL_MAX = 5.0f; // Tiempo máximo entre alternancia SHAPE/PHYSICS (escalado con resolución)
|
||||
constexpr int LOGO_WEIGHT_TOGGLE_PHYSICS = 100; // Único peso: alternar SHAPE ↔ PHYSICS (100%)
|
||||
|
||||
// Sistema de convergencia para LOGO MODE (evita interrupciones prematuras en resoluciones altas)
|
||||
constexpr float LOGO_CONVERGENCE_MIN = 0.75f; // 75% mínimo (permite algo de movimiento al disparar)
|
||||
constexpr float LOGO_CONVERGENCE_MAX = 1.00f; // 100% máximo (completamente formado)
|
||||
|
||||
// Probabilidad de salto a Logo Mode desde DEMO/DEMO_LITE (%)
|
||||
// Relación DEMO:LOGO = 6:1 (pasa 6x más tiempo en DEMO que en LOGO)
|
||||
constexpr int LOGO_JUMP_PROBABILITY_FROM_DEMO = 5; // 5% probabilidad en DEMO normal (más raro)
|
||||
|
||||
Reference in New Issue
Block a user