Complete 3D metaverse platform with: - Three.js 3D rendering - Cannon.js physics engine - Pointer lock controls - Procedural cityscape - Floating islands - Portal system - Particle effects - WebXR/VR support ready - Multiplayer ready (Socket.io) Features: - First-person controls (WASD + mouse) - Jump and run mechanics - Chat system - Real-time HUD - Loading screen - Responsive design Built with Vite for fast builds and hot reload. 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
44 lines
772 B
JavaScript
44 lines
772 B
JavaScript
class NodeBuilderState {
|
|
|
|
constructor( vertexShader, fragmentShader, computeShader, nodeAttributes, bindings, updateNodes, updateBeforeNodes ) {
|
|
|
|
this.vertexShader = vertexShader;
|
|
this.fragmentShader = fragmentShader;
|
|
this.computeShader = computeShader;
|
|
|
|
this.nodeAttributes = nodeAttributes;
|
|
this.bindings = bindings;
|
|
|
|
this.updateNodes = updateNodes;
|
|
this.updateBeforeNodes = updateBeforeNodes;
|
|
|
|
this.usedTimes = 0;
|
|
|
|
}
|
|
|
|
createBindings() {
|
|
|
|
const bindingsArray = [];
|
|
|
|
for ( const instanceBinding of this.bindings ) {
|
|
|
|
let binding = instanceBinding;
|
|
|
|
if ( instanceBinding.shared !== true ) {
|
|
|
|
binding = instanceBinding.clone();
|
|
|
|
}
|
|
|
|
bindingsArray.push( binding );
|
|
|
|
}
|
|
|
|
return bindingsArray;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
export default NodeBuilderState;
|