kart_visual
<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->
kart_visual
<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->TODO: describe this module.
Interface
What this asset declares: the schema it conforms to, what it exposes, and the rendered structured payload.
conforms to
zero/source-extract/v2game.kart_visual — el aspecto de un kart y de una moto, hecho una vez. Lo usan dos sitios: la escena, para el kart del jugador dentro del PlayerPrototype, y el sistema de CPUs, que tiene que construir once karts iguales en tiempo de ejecución. Tenerlo en un solo sitio es lo que garantiza que un rival se vea exactamente como el jugador. Un vehículo no es una caja de pruebas: su forma sale del plantel. Cada uno trae `bodyScale` (ancho, alto, largo), `wheelRadius` y `wheelWidth`, así que un kart pesado se ve largo y ancho, una moto ligera estrecha y corta, y las ruedas de un pesado son más gordas. El peso se VE. Nombres que el componente Kart busca por nombre (y por eso no se pueden cambiar sin cambiarlo a él): `chassis`, `nose`, `driver` (el pivote del piloto), `wheel_*` (las delanteras giran), `tyre_*` (la rueda que rueda), `steering` (el volante), y `spark_*` / `bullet_*`, que los crea él mismo. Todo lo demás es decorado, y para esconder, encoger o hacer brillar el kart entero no hace falta conocerlo: son las piezas que cuelgan de la raíz. La raíz NO lleva escala: las ruedas cuelgan de ella y heredarían el estirón. Cada pieza lleva la suya.
shade(c: ?, k: ?) → void
| arg | type | description |
|---|---|---|
| c | ? | |
| k | ? |
buildFactor(character: ?) → void
Cuánto mide el piloto según lo que pese: un ligero es un piloto pequeño y un pesado uno corpulento. Es la mitad de lo que hace que el plantel se lea.
| arg | type | description |
|---|---|---|
| character | ? |
part(parent: ?, name: ?, mesh: ?, tint: ?, pos: ?, scale: ?, rot: ?) → void
Una pieza: una entidad con su malla, su material y su color.
| arg | type | description |
|---|---|---|
| parent | ? | |
| name | ? | |
| mesh | ? | |
| tint | ? | |
| pos | ? | |
| scale | ? | |
| rot | ? |
wheel(parent: ?, name: ?, x: ?, y: ?, z: ?, radius: ?, width: ?) → void
Una rueda, en tres niveles, para que cada eje haga una sola cosa y ninguna rotación se componga con otra: wheel_* el eje de dirección (solo las delanteras giran) axle_* tumba el cilindro para que su eje sea el del kart (fijo) tyre_* gira sobre su propio eje: la rueda que rueda La llanta y la marca cuelgan del neumático, así que giran con él — que es lo único que hace que un giro se VEA.
| arg | type | description |
|---|---|---|
| parent | ? | |
| name | ? | |
| x | ? | |
| y | ? | |
| z | ? | |
| radius | ? | |
| width | ? |
modelOf(characterId: ?) → void
El piloto El modelo generado de un personaje, si lo tiene. Son las láminas de referencia convertidas en malla (viven en `game/art/models/<id>.bundle`, con su malla, su material y sus texturas). La identidad va escrita UNA A UNA a propósito: una identidad calculada no se puede fijar, y el contenido que la usa no se puede publicar.
| arg | type | description |
|---|---|---|
| characterId | ? |
standIn(parent: ?, color: ?, factor: ?) → void
La figura de recambio: lo que se ve mientras un personaje no tiene modelo. Son piezas, así que la postura se pone a mano.
| arg | type | description |
|---|---|---|
| parent | ? | |
| color | ? | |
| factor | ? |
pilot(parent: ?, character: ?, color: ?, factor: ?) → void
El piloto de un vehículo: su modelo si lo tiene, y si no la figura. Los dos cuelgan de `driver`, que es el pivote que el componente Kart inclina al girar la curva — y por eso valen igual el modelo que la figura.
| arg | type | description |
|---|---|---|
| parent | ? | |
| character | ? | |
| color | ? | |
| factor | ? |
buildKart(parent: ?, v: ?, character: ?, livery: ?, driverColor: ?, factor: ?) → void
El kart
| arg | type | description |
|---|---|---|
| parent | ? | |
| v | ? | |
| character | ? | |
| livery | ? | |
| driverColor | ? | |
| factor | ? |
buildBike(parent: ?, v: ?, character: ?, livery: ?, driverColor: ?, factor: ?) → void
La moto
| arg | type | description |
|---|---|---|
| parent | ? | |
| v | ? | |
| character | ? | |
| livery | ? | |
| driverColor | ? | |
| factor | ? |
build(parent: ?, vehicle: ?, character: ?) → void
La puerta por la que entra todo el mundo Construye el vehículo entero colgando de `parent`. `vehicle` y `character` aceptan la tabla del plantel o su id, y sin nada caen al conjunto por defecto — así un id desconocido deja un vehículo con el que se puede conducir en vez de uno sin forma.
| arg | type | description |
|---|---|---|
| parent | ? | |
| vehicle | ? | |
| character | ? |
clear(parent: ?) → void
--!desc Quita las piezas que este módulo pone colgando de `parent`, para poder --!desc volver a construirlas con otro vehículo: elegir una moto en el menú --!desc tiene que verse. Se van las del vehículo y las chispas; la bala es del --!desc componente y se queda.
| arg | type | description |
|---|---|---|
| parent | ? |
liveryFor(vehicleId: ?) → void
El color del kart de un vehículo del plantel, para que cada vehículo tenga su librea y no todos los karts sean iguales.
| arg | type | description |
|---|---|---|
| vehicleId | ? |
Sub-parts
Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.
Showing up to 3 levels deep. Open a part to see what it holds further down.
Problems
Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.
agent_score is exposed.+ quality × 0.35
+ performance × 0.25
± compat factor
Usability ratings
Did the part work as advertised when consumers tried to drop it in. Separate from upvotes: those are taste; this is "did it function".
Scoped to this part · feeds back into the world's score.