Globals and Constants
SCRIPTING_RUNTIME_REV
Representa el número de revisión actual del runtime de scripting.
Este valor se puede usar para:
- Verificar compatibilidad con características específicas del runtime.
- Aplicar lógica condicional para compatibilidad hacia atrás/adelante.
- Proporcionar alternativas para entornos más antiguos.
Ejemplo:
if (SCRIPTING_RUNTIME_REV < 5) {
console.warn("Esta función requiere la revisión 5 o posterior.");
} else {
enableAdvancedFeature();
}
M_PI
Constante que representa el valor matemático de π (3.14159...
).
Ejemplo:
const circumference = 2 * M_PI * radius;
MAX_INT
Constante que representa el valor máximo que un entero con signo de 32 bits puede almacenar (2,147,483,647
).
Ejemplo:
if (value > MAX_INT) {
throw new Error("El valor excede el rango de un entero de 32 bits.");
}
MIN_INT
Constante que representa el valor mínimo que un entero con signo de 32 bits puede almacenar (-2,147,483,648
).
Ejemplo:
if (value < MIN_INT) {
throw new Error("El valor está por debajo del rango de un entero de 32 bits.");
}
DEBUG
Indica si la aplicación se está ejecutando en modo debug.
Útil para habilitar registros adicionales, perfiles o diagnósticos.
Ejemplo:
if (DEBUG) {
console.log("Depuración habilitada – se mostrarán registros detallados.");
}
EDITOR
Indica si la aplicación se está ejecutando dentro de un entorno de editor (en lugar de runtime).
Caso de uso:
Habilitar herramientas solo para el editor, paneles de UI o superposiciones de depuración.
Ejemplo:
ts
if (EDITOR) {
showEditorToolbar();
}
IS_MOBILE
Indica si el dispositivo actual es una plataforma móvil.
Ejemplo:
if (IS_MOBILE) {
enableTouchControls();
} else {
enableKeyboardControls();
}
PLATFORM_WINDOWS
Indica si el sistema operativo actual es Windows.
Ejemplo:
if (PLATFORM_WINDOWS) {
console.log("Ejecutando en Windows");
}
PLATFORM_MACOS
Indica si el sistema operativo actual es macOS.
Ejemplo:
if (PLATFORM_MACOS) {
console.log("Ejecutando en macOS");
}
PLATFORM_LINUX
Indica si el sistema operativo actual es Linux.
Ejemplo:
if (PLATFORM_LINUX) {
console.log("Ejecutando en Linux");
}
PLATFORM_ANDROID
Indica si el sistema operativo actual es Android.
Ejemplo:
if (PLATFORM_ANDROID) {
console.log("Ejecutando en Android");
}
PLATFORM_IOS
Indica si el sistema operativo actual es iOS.
Ejemplo:
if (PLATFORM_IOS) {
console.log("Ejecutando en iOS");
}
DEG_TO_RAD(x: number): number
Convierte un ángulo de grados a radianes.
Ejemplo:
const radians = DEG_TO_RAD(90); // 1.5708 (π/2)
RAD_TO_DEG(x: number): number
Convierte un ángulo de radianes a grados.
Ejemplo:
const degrees = RAD_TO_DEG(M_PI); // 180
ASSERT(x: any): void
Verifica si una condición es verdadera y lanza un error en caso contrario.
Ejemplo:
ASSERT(player != null); // Lanza error si player es null
SURL(url: string): string
Convierte una URL en una URL segura en sandbox, asegurando que esté codificada correctamente. Útil para normalizar URLs antes de realizar solicitudes.
Ejemplo:
const safeUrl = SURL("https://example.com/unsafe?param=hello world");
fetch(safeUrl);
self
Referencia al Behaviour actual en el contexto de ejecución.
Se usa para acceder y manipular propiedades o métodos relacionados con el Behaviour.
Ejemplo:
self.position.set(0, 1, 0);
self.rotateY(Math.PI / 2);
scene
Referencia global al objeto THREE.Scene. Es el contenedor central para todos los elementos 3D de la aplicación, permitiendo añadir, eliminar y modificar objetos dinámicamente.
Ejemplo:
scene.add(new THREE.Mesh(new THREE.BoxGeometry(), new THREE.MeshBasicMaterial()));
scene.remove(oldObject);
camera
Proporciona acceso global a la THREE.Camera de la escena. Se usa para configurar y manipular propiedades de la cámara.
Ejemplo:
camera.position.set(0, 5, 10);
camera.lookAt(0, 0, 0);
audioListener
Proporciona acceso global a la instancia de THREE.AudioListener adjunta a la cámara. Es esencial para gestionar y crear fuentes de audio dinámicas dentro de la escena 3D.
Ejemplo:
const sound = new THREE.Audio(audioListener);
sound.setBuffer(audioBuffer);
sound.play();