Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
SIMVX
HomeExamplesEditorDocs
SimVX documentation
SimVX documentation

Getting Started

  • Installation
  • Quickstart
  • Your First 2D Game
  • Your First 3D Game
  • From Monolithic to Composed
  • Patterns
  • Examples Gallery
    • Animated Sprite
    • Area2D
    • Bloom 2D
    • Camera2D
    • Collision Shapes
    • Blend Modes
    • GPU Particle Fireworks
    • GPU Particles 2D
    • 2D Joints
    • Layer post
    • 2D Lighting
    • Navigation
    • NinePatch
    • 2D Path Follow
    • Screen Effects 2D
    • Sprite
    • Tilemap
    • Timer
    • 2D Trail
    • Triangle
    • Tween
    • Animated Model
    • Animation Blend
    • ChaseCamera demo
    • Physics Raycast Sandbox
    • Compressed texture
    • CSG
    • Custom Shader
    • Cutout shadows
    • Decals
    • Dynamic procedural sky
    • Mesh.extrude_path demo
    • First-person camera demo
    • Fog
    • GPU Particles 3D Demo
    • IBL
    • 3D Joints
    • 3D Lighting
    • LutGrading
    • Mesh Parenting
    • Model Viewer
    • Motion Blur
    • MultiMesh
    • 3D Navigation
    • Noise
    • Normal mapping
    • Occlusion culling
    • FFT ocean
    • Particles
    • 3D Path Follow demo
    • Mouse picking demo
    • Planar reflection
    • Planar water
    • Point and spot light shadow demo.
    • PostProcessParity
    • Irradiance probe volume
    • Rain and wetness
    • Raycast demo
    • ReflectionProbe3D
    • Screen-space refraction
    • Render Layers Demo
    • Render scale
    • RenderView
    • Rotating Cube
    • Shadow quality demo
    • Skeletal animation demo
    • SSAO Demo
    • Screen-space global illumination
    • Screen-space reflections
    • SubViewport
    • Per-view occlusion
    • TAA
    • TAAU
    • Node tree text demo
    • Textured cubes demo
    • Volumetric Fog
    • Water surface
    • World 2D in HDR
    • LLM NPC Flavour
    • Node-Gen
    • Audio demo
    • Spatial Audio
    • Lifecycle
    • Properties
    • Debug Draw
    • Debug Overlay
    • Python Console
    • Terminal Demo
    • Dialogue Box
    • Touch gesture recognition demo
    • HUD Anchors
    • Internationalisation
    • Grid Inventory
    • Menu Bar Demo
    • Pause Menu
    • Settings Screen
    • Splash Screen
    • Text Input Demo
    • Visual demo for the StyleBox theming system.
    • TreeView Demo
    • Undo/Redo demo
    • Widget Showcase
    • Bouncing Balls
    • Bouncing Balls
    • First Scene
    • First Scene
    • Gem Collector
    • Gem Collector
    • Input and Movement
    • Input and Movement
    • Monolith to Composed
    • Monolith to Composed
    • Nodes and Signals
    • Nodes and Signals
    • Pong
    • Pong
    • Balatro-Feel
    • Balatro-Feel: SimVX port
    • Casual Crusade
    • Casual Crusade (SimVX port)
    • Claustrowordia
    • Claustrowordia (SimVX port)
    • Clear Code Zelda
    • Clear Code Zelda: SimVX port
    • Clumsy Bird
    • Clumsy Bird (SimVX port)
    • Dodge the Creeps
    • GDQuest Open RPG
    • GDQuest Open RPG: SimVX port
    • HeartBeast Action RPG
    • HeartBeast Action RPG: SimVX Port
    • HexGL
    • HexGL: SimVX Port
    • Hextris
    • Hextris: SimVX port
    • Mr. Rescue
    • Mr. Rescue: SimVX port
    • PirateMaker
    • PirateMaker: SimVX port
    • Procedural Planets
    • Procedural Planets: SimVX Port
    • Q1K3
    • Q1K3: SimVX port
    • Asteroids (raylib classic)
    • Snake (raylib classic)
    • Snake (raylib classic): SimVX port
    • Tetris (raylib classic)
    • Tetris (raylib classic): SimVX port
    • SNKRX
    • SNKRX (SimVX port)
    • Klondike Solitaire
    • Klondike Solitaire: SimVX port
    • Squash the Creeps
    • Tanks of Freedom
    • Tanks of Freedom: SimVX port
    • Tiny Yurts
    • Tiny Yurts (SimVX port)
    • Tower Defence
    • Tower Defence (SimVX port)
    • Pixel Runner
    • Pixel Runner: SimVX Port
    • You’re the OS
    • You’re the OS: SimVX Port (Tier 2 #26)
    • Afterglow
    • Afterglow: original precision platformer (SimVX flagship demo)
    • Asteroids 2D
    • Asteroids 3D
    • Bloom
    • Bloom
    • Deep Sea Aquarium
    • Dungeon Explorer
    • Pad Grid
    • Physics Sandbox
    • Planet Explorer
    • Platformer
    • Space Invaders 2D
    • Space Invaders 3D
    • Squad Commander
    • Tic Tac Toe
    • Tic Tac Toe 3D
    • Tidewater
  • Architecture
  • Building a Simple Game with the SimVX Editor

Core Engine

  • Core Engine
  • Node System
  • Input System
  • Windowing Backends
  • Animation
  • SimVX Audio System
  • AssetServer
  • UI System
  • Math Types
  • Collision & Physics
  • Scenes
  • Particles
  • TileMap
  • 2D Lighting
  • Constructive Solid Geometry
  • Navigation
  • 3D Navigation
  • Skeleton
  • Physics Engine
  • Physics Backends
  • WorldEnvironment
  • Testing
  • Performance regression suite
  • Package Resources
  • Save System
  • Event Bus

Graphics Backend

  • Graphics Backend
  • App Class
  • Cameras (3D)
  • Draw2D: immediate-mode 2D drawing
  • Materials
  • Compressed Textures (BC / ASTC / ETC2)
  • Blender to SimVX (glTF)
  • Custom Shaders
  • Visual Testing

Web

  • Web Export
  • Web export: resource channel

IDE

  • IDE

API Reference

  • API Reference
    • simvx.core
      • simvx.core.ai
        • simvx.core.ai.brain
        • simvx.core.ai.blackboard
        • simvx.core.ai.sensor
        • simvx.core.ai.agent_node
        • simvx.core.ai.async_slot
      • simvx.core.physics
        • simvx.core.physics.builtin
          • simvx.core.physics.builtin.world2d
          • simvx.core.physics.builtin.world
        • simvx.core.physics.nodes2d
        • simvx.core.physics.query
        • simvx.core.physics.capability
        • simvx.core.physics.backends
        • simvx.core.physics.shapes2d
        • simvx.core.physics.pymunk_backend
        • simvx.core.physics.shapes
        • simvx.core.physics.material
        • simvx.core.physics.nodes
        • simvx.core.physics.world2d
        • simvx.core.physics.root
        • simvx.core.physics.query2d
        • simvx.core.physics.world
      • simvx.core.scene_io
        • simvx.core.scene_io.loader
        • simvx.core.scene_io.source_tree
        • simvx.core.scene_io.edits
        • simvx.core.scene_io.detection
        • simvx.core.scene_io.scene_file
        • simvx.core.scene_io.scene_module
        • simvx.core.scene_io.symbols
        • simvx.core.scene_io.emitter
      • simvx.core.assets
        • simvx.core.assets.sources
          • simvx.core.assets.sources.pkg
          • simvx.core.assets.sources.file
          • simvx.core.assets.sources.mem
          • simvx.core.assets.sources.http
        • simvx.core.assets.loaders
          • simvx.core.assets.loaders.base
          • simvx.core.assets.loaders.json_loader
          • simvx.core.assets.loaders.bytes_loader
        • simvx.core.assets.source
        • simvx.core.assets.server
        • simvx.core.assets.cache
        • simvx.core.assets.handle
      • simvx.core.navigation
        • simvx.core.navigation.path_follower_2d
      • simvx.core.debug
        • simvx.core.debug.overlay
        • simvx.core.debug.ui_inspector
        • simvx.core.debug.profiler
      • simvx.core.port_helpers
        • simvx.core.port_helpers.procedural_textures
      • simvx.core.nodes_3d
        • simvx.core.nodes_3d.path
        • simvx.core.nodes_3d.text
        • simvx.core.nodes_3d.multimesh
        • simvx.core.nodes_3d.remote_transform
        • simvx.core.nodes_3d.node3d
        • simvx.core.nodes_3d.sprite
        • simvx.core.nodes_3d.chase_camera
        • simvx.core.nodes_3d.marker
        • simvx.core.nodes_3d.lights
        • simvx.core.nodes_3d.camera
        • simvx.core.nodes_3d.mesh
        • simvx.core.nodes_3d.spring_arm
      • simvx.core.input
        • simvx.core.input.events
        • simvx.core.input.map
        • simvx.core.input.state
        • simvx.core.input.enums
      • simvx.core.ui
        • simvx.core.ui.core
        • simvx.core.ui.ui_input
        • simvx.core.ui.virtual_scroll
        • simvx.core.ui.autocomplete
        • simvx.core.ui.terminal
        • simvx.core.ui.splash
        • simvx.core.ui.code_edit
        • simvx.core.ui.file_browser
        • simvx.core.ui.overlay
        • simvx.core.ui.syntax_highlighter
        • simvx.core.ui.tabs
        • simvx.core.ui.colour_picker
        • simvx.core.ui.toolbar
        • simvx.core.ui.types
        • simvx.core.ui.clipboard
        • simvx.core.ui.markers
        • simvx.core.ui.split
        • simvx.core.ui.graph_edit
        • simvx.core.ui.virtual_controls
        • simvx.core.ui.testing
        • simvx.core.ui.menu
        • simvx.core.ui.bottom_strip
        • simvx.core.ui.containers
        • simvx.core.ui.tree
        • simvx.core.ui.code_editor_panel
        • simvx.core.ui.folding
        • simvx.core.ui.theme
        • simvx.core.ui.find_replace
        • simvx.core.ui.dock
        • simvx.core.ui.rich_text
        • simvx.core.ui.scroll
        • simvx.core.ui.file_dialog
        • simvx.core.ui.gamepad_overlay
        • simvx.core.ui.marks
        • simvx.core.ui.ansi_parser
        • simvx.core.ui.widgets
        • simvx.core.ui.completion_types
        • simvx.core.ui.multiline
        • simvx.core.ui.text_paragraph
        • simvx.core.ui.tooltip
        • simvx.core.ui.enums
        • simvx.core.ui.advanced
        • simvx.core.ui.grid_slots
      • simvx.core.text
        • simvx.core.text.msdf
        • simvx.core.text.font
      • simvx.core.math
        • simvx.core.math.matrices
        • simvx.core.math.types
        • simvx.core.math.rect2
        • simvx.core.math.aabb
        • simvx.core.math.curves
        • simvx.core.math.raycast
        • simvx.core.math.transforms
      • simvx.core.animation
        • simvx.core.animation.blend_space
        • simvx.core.animation.state_machine
        • simvx.core.animation.tween
        • simvx.core.animation.player
        • simvx.core.animation.sprite
        • simvx.core.animation.skeletal
        • simvx.core.animation.track
      • simvx.core.graphics
        • simvx.core.graphics.material
        • simvx.core.graphics.shader
        • simvx.core.graphics.mesh
      • simvx.core.navigation3d
        • simvx.core.navigation3d.server
        • simvx.core.navigation3d.nodes
        • simvx.core.navigation3d.mesh
      • simvx.core.nodes_2d
        • simvx.core.nodes_2d.path
        • simvx.core.nodes_2d.text
        • simvx.core.nodes_2d.remote_transform
        • simvx.core.nodes_2d.background_bands
        • simvx.core.nodes_2d.ninepatch
        • simvx.core.nodes_2d.node2d
        • simvx.core.nodes_2d.shapes
        • simvx.core.nodes_2d.ysort
        • simvx.core.nodes_2d.spring_follow
        • simvx.core.nodes_2d.canvas
        • simvx.core.nodes_2d.marker
        • simvx.core.nodes_2d.camera
        • simvx.core.nodes_2d.trail
      • simvx.core.audio_backend
      • simvx.core.lsp
        • simvx.core.lsp.protocol
        • simvx.core.lsp.server
        • simvx.core.lsp.client
      • simvx.core.testing
        • simvx.core.testing.scene_runner
        • simvx.core.testing.input_sim
        • simvx.core.testing.recorder
        • simvx.core.testing.benchmark
        • simvx.core.testing.diagnostics
      • simvx.core.coroutines
      • simvx.core.audio_bus
      • simvx.core.save_manager
      • simvx.core.audio_listener
      • simvx.core.decal
      • simvx.core.selection
      • simvx.core.colour
      • simvx.core.file_state
      • simvx.core.py_console
      • simvx.core.ocean
      • simvx.core.io
      • simvx.core.scene_tree
      • simvx.core.csg
      • simvx.core.planar_reflection
      • simvx.core.cli
      • simvx.core.particles
      • simvx.core.skeleton
      • simvx.core.run
      • simvx.core.surface_tool
      • simvx.core.render_view
      • simvx.core.export
      • simvx.core.gizmo
      • simvx.core.event_bus
      • simvx.core.noise
      • simvx.core.audio_effect
      • simvx.core.shell_node
      • simvx.core.gpu_particles
      • simvx.core.reflection_probe
      • simvx.core.tilemap
      • simvx.core.branding
      • simvx.core.clipboard
      • simvx.core.resource
      • simvx.core.atlas
      • simvx.core.particle_trail
      • simvx.core.audio_errors
      • simvx.core.procedural_sky
      • simvx.core.colour_grading
      • simvx.core.gesture
      • simvx.core.asset_resolver
      • simvx.core.signals
      • simvx.core.document
      • simvx.core.hot_reload
      • simvx.core.audio_protocol
      • simvx.core.script_embed
      • simvx.core.water
      • simvx.core.scripted_demo
      • simvx.core.descriptors
      • simvx.core.script
      • simvx.core.light2d
      • simvx.core.project
      • simvx.core.properties
      • simvx.core.events
      • simvx.core.audio
      • simvx.core.graphics_quality
      • simvx.core.easing
      • simvx.core.world_environment
      • simvx.core.fog_volume
      • simvx.core.undo
      • simvx.core.clustered_lighting
      • simvx.core.rain
      • simvx.core.scene_target_graph
      • simvx.core.env_sync_spec
      • simvx.core.irradiance_volume
      • simvx.core.shortcuts
      • simvx.core.mesh_lod
      • simvx.core.config
      • simvx.core.node
      • simvx.core.skeleton2d
      • simvx.core.git_status
      • simvx.core.i18n
      • simvx.core.mesh_instance_2d
      • simvx.core.decorators
      • simvx.core.audio_synth
      • simvx.core.scene_step
      • simvx.core.viewport
    • simvx.graphics
      • simvx.graphics.streaming
        • simvx.graphics.streaming.server
      • simvx.graphics.assets
        • simvx.graphics.assets.ktx2_loader
        • simvx.graphics.assets.dds_loader
        • simvx.graphics.assets.scene_import
        • simvx.graphics.assets.cubemap_loader
        • simvx.graphics.assets.mesh_loader
        • simvx.graphics.assets.image_loader
        • simvx.graphics.assets.block_decode
      • simvx.graphics.platform
      • simvx.graphics.picking
        • simvx.graphics.picking.pick_pass
        • simvx.graphics.picking.raycast
      • simvx.graphics.shaders
      • simvx.graphics.renderer
        • simvx.graphics.renderer.render_graph
        • simvx.graphics.renderer.render_pass
        • simvx.graphics.renderer.reflection_probe_pass
        • simvx.graphics.renderer.depth_prepass
        • simvx.graphics.renderer.ssgi_pass
        • simvx.graphics.renderer.tilemap_pass
        • simvx.graphics.renderer.reflection_probe_pack
        • simvx.graphics.renderer.hiz_pass
        • simvx.graphics.renderer.shadow_renderer
        • simvx.graphics.renderer.overlay_renderer
        • simvx.graphics.renderer.layer_post
        • simvx.graphics.renderer.custom_post_process
        • simvx.graphics.renderer.render_view
        • simvx.graphics.renderer.taa_pass
        • simvx.graphics.renderer.irradiance_volume_pass
        • simvx.graphics.renderer.outline_pass
        • simvx.graphics.renderer.gpu_batch
        • simvx.graphics.renderer.vertex_layouts
        • simvx.graphics.renderer.async_compute
        • simvx.graphics.renderer.ocean_fft
        • simvx.graphics.renderer.gizmo_pass
        • simvx.graphics.renderer.particle_compute
        • simvx.graphics.renderer.scene_renderer
        • simvx.graphics.renderer.ocean_pack
        • simvx.graphics.renderer.grid_pass
        • simvx.graphics.renderer.draw2d_pass
        • simvx.graphics.renderer.view_occlusion
        • simvx.graphics.renderer.sub_viewport
        • simvx.graphics.renderer.colour_grading
        • simvx.graphics.renderer.secondary_sru
        • simvx.graphics.renderer.scene_copy
        • simvx.graphics.renderer.light2d_pass
        • simvx.graphics.renderer.volumetric_fog_pass
        • simvx.graphics.renderer.passes
        • simvx.graphics.renderer.game_viewport
        • simvx.graphics.renderer.water_pack
        • simvx.graphics.renderer.decal_pack
        • simvx.graphics.renderer.bindless_draw2d_pass
        • simvx.graphics.renderer.viewport_manager
        • simvx.graphics.renderer.particle_pass
        • simvx.graphics.renderer.mesh_registry
        • simvx.graphics.renderer.billboard2d_data
        • simvx.graphics.renderer.environment_sync
        • simvx.graphics.renderer.shadow_pass
        • simvx.graphics.renderer.occlusion_cull
        • simvx.graphics.renderer.ssr_pass
        • simvx.graphics.renderer.pass_orchestrator
        • simvx.graphics.renderer.render_packet
        • simvx.graphics.renderer.light_cull_pass
        • simvx.graphics.renderer.shadow_math
        • simvx.graphics.renderer.text_pass
        • simvx.graphics.renderer.skybox_pass
        • simvx.graphics.renderer.point_shadow_pass
        • simvx.graphics.renderer.forward
        • simvx.graphics.renderer.billboard2d_pass
        • simvx.graphics.renderer.bloom_pass
        • simvx.graphics.renderer.render_target
        • simvx.graphics.renderer.render_thread
        • simvx.graphics.renderer.ocean_pass
        • simvx.graphics.renderer.render_context
        • simvx.graphics.renderer.tile_types
        • simvx.graphics.renderer.ibl_pass
        • simvx.graphics.renderer.ocean_compute
        • simvx.graphics.renderer.fog_volume_pack
        • simvx.graphics.renderer.transparency
        • simvx.graphics.renderer.post_process
        • simvx.graphics.renderer.ssao_pass
        • simvx.graphics.renderer.resource_registry
        • simvx.graphics.renderer.buffer_manager
        • simvx.graphics.renderer.pipeline_manager
        • simvx.graphics.renderer.pass_helpers
        • simvx.graphics.renderer.velocity_pass
        • simvx.graphics.renderer.water_pass
      • simvx.graphics.render2d
        • simvx.graphics.render2d.publish
        • simvx.graphics.render2d.clip_scope
        • simvx.graphics.render2d.submit
        • simvx.graphics.render2d.item_list
        • simvx.graphics.render2d.cache
        • simvx.graphics.render2d.item_builder
      • simvx.graphics.gpu
        • simvx.graphics.gpu.swapchain
        • simvx.graphics.gpu.sync
        • simvx.graphics.gpu.secondary_engine
        • simvx.graphics.gpu.multi_device
        • simvx.graphics.gpu.capabilities
        • simvx.graphics.gpu.timestamp_pool
        • simvx.graphics.gpu.descriptors
        • simvx.graphics.gpu.pipeline_compute
        • simvx.graphics.gpu.pipeline_cache
        • simvx.graphics.gpu.commands
        • simvx.graphics.gpu.pipeline
        • simvx.graphics.gpu.context
        • simvx.graphics.gpu.memory
        • simvx.graphics.gpu.device
        • simvx.graphics.gpu.instance
      • simvx.graphics.ui
      • simvx.graphics.materials
        • simvx.graphics.materials.custom_shader
        • simvx.graphics.materials.texture
        • simvx.graphics.materials.material
        • simvx.graphics.materials.shader_compiler
      • simvx.graphics.scene
        • simvx.graphics.scene.frustum
        • simvx.graphics.scene.camera
        • simvx.graphics.scene.draw_batch
      • simvx.graphics.draw2d_vertex
      • simvx.graphics.engine
      • simvx.graphics.input_adapter
      • simvx.graphics.cli
      • simvx.graphics.draw2d_texture
      • simvx.graphics.engine_surface
      • simvx.graphics.types
      • simvx.graphics.app
      • simvx.graphics.debug_draw
      • simvx.graphics.testing
      • simvx.graphics.draw2d_text
      • simvx.graphics.draw2d
      • simvx.graphics.text_utils
      • simvx.graphics.cook
      • simvx.graphics.text_renderer
      • simvx.graphics.frame_globals
      • simvx.graphics.frame_loop
      • simvx.graphics.draw2d_transform
      • simvx.graphics.gpu_gate
      • simvx.graphics.scene_adapter
      • simvx.graphics.draw2d_ops
      • simvx.graphics.playtest_patterns
      • simvx.graphics.playtest
      • simvx.graphics.material_slots
    • simvx.editor
      • simvx.editor.panels
        • simvx.editor.panels.scene_tree
          • simvx.editor.panels.scene_tree.dialogs
          • simvx.editor.panels.scene_tree.panel
          • simvx.editor.panels.scene_tree.type_registry
        • simvx.editor.panels.inspector_sections
        • simvx.editor.panels.inspector_script
        • simvx.editor.panels.status_bar
        • simvx.editor.panels.animation
        • simvx.editor.panels.file_browser
        • simvx.editor.panels.animation_editor
        • simvx.editor.panels.inspector_widgets
        • simvx.editor.panels.anchor_preset_widget
        • simvx.editor.panels.play_controls
        • simvx.editor.panels.console
        • simvx.editor.panels.code_tab
        • simvx.editor.panels.properties
        • simvx.editor.panels.scene3d_view
        • simvx.editor.panels.asset_browser
        • simvx.editor.panels.scene2d_view
        • simvx.editor.panels.section_widgets
        • simvx.editor.panels.repl_panel
        • simvx.editor.panels.profiler_panel
      • simvx.editor.testing
        • simvx.editor.testing.demo_steps
          • simvx.editor.testing.demo_steps.handlers
            • simvx.editor.testing.demo_steps.handlers.inspector
            • simvx.editor.testing.demo_steps.handlers.menu
            • simvx.editor.testing.demo_steps.handlers.nodes
            • simvx.editor.testing.demo_steps.handlers.viewport
          • simvx.editor.testing.demo_steps.steps
      • simvx.editor.game_render_hook
      • simvx.editor.play_mode
      • simvx.editor.scene_diff
      • simvx.editor.refactor_extract
      • simvx.editor.default_scenes
      • simvx.editor.export_controller
      • simvx.editor.workspace_tabs
      • simvx.editor.templates
      • simvx.editor.cli
      • simvx.editor.node_ops
      • simvx.editor.error_recovery
      • simvx.editor.plugin
      • simvx.editor.welcome
      • simvx.editor.app
      • simvx.editor.duplicate_node_dialog
      • simvx.editor.menus
      • simvx.editor.project_registry
      • simvx.editor.about_dialog
      • simvx.editor.keyboard_nav
      • simvx.editor.layout_presets
      • simvx.editor.scene_file_ops
      • simvx.editor.modal_dialog
      • simvx.editor.preferences_dialog
      • simvx.editor.project
      • simvx.editor.web_export
      • simvx.editor.make_custom_class_dialog
      • simvx.editor.script_ops
      • simvx.editor.save_dialog
      • simvx.editor.project_settings_dialog
      • simvx.editor.extract
      • simvx.editor.error_nav
      • simvx.editor.refactor_inline
      • simvx.editor.theme
      • simvx.editor.export_dialog
      • simvx.editor.live_file_ops
      • simvx.editor.project_classes
      • simvx.editor.command_palette
      • simvx.editor.root
      • simvx.editor.state
      • simvx.editor.config
      • simvx.editor.main
      • simvx.editor.commands
      • simvx.editor.gizmo_manipulator
      • simvx.editor.hints
      • simvx.editor.input_map_dialog
      • simvx.editor.unsaved_class_warning_dialog
      • simvx.editor.autosave
      • simvx.editor.rename_class_dialog
    • simvx.ide
      • simvx.ide.widgets
        • simvx.ide.widgets.status_bar
        • simvx.ide.widgets.autocomplete
        • simvx.ide.widgets.goto_line
        • simvx.ide.widgets.minimap
        • simvx.ide.widgets.confirm_dialog
        • simvx.ide.widgets.command_palette
      • simvx.ide.panels
        • simvx.ide.panels.terminal_panel
        • simvx.ide.panels.symbol_outline
        • simvx.ide.panels.settings_panel
        • simvx.ide.panels.output_panel
        • simvx.ide.panels.file_browser
        • simvx.ide.panels.debug_panel
        • simvx.ide.panels.problems_panel
        • simvx.ide.panels.search_panel
      • simvx.ide.dap
        • simvx.ide.dap.client
      • simvx.ide.lint
        • simvx.ide.lint.runner
      • simvx.ide.lsp
        • simvx.ide.lsp.client
      • simvx.ide.debug_session
      • simvx.ide.language_server
      • simvx.ide.file_tabs
      • simvx.ide.editor_integration
      • simvx.ide.app
      • simvx.ide.state
      • simvx.ide.edit_actions
      • simvx.ide.embedded
      • simvx.ide.keybindings
      • simvx.ide.config
      • simvx.ide.playtest

Project

  • SimVX Documentation License
Back to top
View this page

Examples Gallery¶

Browse every SimVX example. Use the checkboxes to filter by category and the search box to narrow by title or tag.

SimVX Editor in your browser not all features work yet
Openbeta
Showing 0/0

Animated Sprite

Frame animation from a procedural spritesheet via AnimatedSprite2D.

▶ Play

Animated Sprite

Area2D

A trigger zone that fires body_entered / body_exited.

▶ Play

Area2D

Bloom 2D

glow on a pure-2D scene via WorldEnvironment.

▶ Play

Bloom 2D

Camera2D

follow a target with smoothing, zoom, and edge limits.

▶ Play

Camera2D

Collision Shapes

A circle and a box body falling onto a static floor.

▶ Play

Collision Shapes

Blend Modes

Multiply day/night overlay + additive flash via Draw2D.

▶ Play

Blend Modes

GPU Particle Fireworks

a sequential burst show of every spread_pattern.

▶ Play

GPU Particle Fireworks

GPU Particles 2D

A GPU-driven particle fountain with gravity and colour fade.

▶ Play

GPU Particles 2D

2D Joints

a swinging pendulum chain built from PinJoint2D constraints.

▶ Play

2D Joints

Layer post

per-CanvasLayer post-processing (bloom the world, keep the HUD crisp).

▶ Play

Layer post

2D Lighting

Coloured point lights with shadow-casting occluders.

▶ Play

2D Lighting

Navigation

grid-based A* pathfinding with a click-to-move character.

▶ Play

Navigation

NinePatch

9-slice sprite scaling via Draw2D.draw_texture_region().

▶ Play

NinePatch

2D Path Follow

A circle follows a figure-8 bezier curve.

▶ Play

2D Path Follow

Screen Effects 2D

CRT, pixelate, and blur on a pure-2D scene via WorldEnvironment.

▶ Play

Screen Effects 2D

Sprite

Render textured quads via Sprite2D.

▶ Play

Sprite

Tilemap

GPU-rendered tilemap with multi-layer and player-follow camera.

▶ Play

Tilemap

Timer

run code on a delay or at a repeating interval.

▶ Play

Timer

2D Trail

Colour-gradient trails behind moving objects.

▶ Play

2D Trail

Triangle

Minimal custom-draw example.

▶ Play

Triangle

Tween

animate any property over time with easing.

▶ Play

Tween

Animated Model

load a rigged glTF and play its skeletal animation.

▶ Play

Animated Model

Animation Blend

BlendSpace1D, crossfade, and keyframe events.

▶ Play

Animation Blend

ChaseCamera demo

3rd-person lag-and-spring follow camera.

▶ Play

ChaseCamera demo

Physics Raycast Sandbox

drop bodies into a PhysicsRoot and raycast against them.

▶ Play

Physics Raycast Sandbox

Compressed texture

load a UASTC .ktx2 onto a 3D mesh via Material.albedo_map.

▶ Play

Compressed texture

CSG

Constructive Solid Geometry boolean operations on 3D shapes.

▶ Play

CSG

Custom Shader

ShaderMaterial API preview with animated uniforms.

▶ Play

Custom Shader

Cutout shadows

an alpha-tested material casts a holed shadow (RM-G11).

▶ Play

Cutout shadows

Decals

projecting textures onto surfaces with Decal3D.

▶ Play

Decals

Dynamic procedural sky

a Preetham analytic day-night sweep driving IBL.

▶ Play

Dynamic procedural sky

Mesh.extrude_path demo

sweep a profile along a 3D centerline.

▶ Play

Mesh.extrude_path demo

First-person camera demo

WASD movement + mouse-look.

▶ Play

First-person camera demo

Fog

Distance-based fog via WorldEnvironment.

▶ Play

Fog

GPU Particles 3D Demo

compute-shader-driven particle simulation.

▶ Play

GPU Particles 3D Demo

IBL

Image-based lighting on metallic spheres.

▶ Play

IBL

3D Joints

Pendulum chain and hinge door using physics joints.

▶ Play

3D Joints

3D Lighting

Directional and orbiting point lights.

▶ Play

3D Lighting

LutGrading

Desktop 3D-LUT colour grading via WorldEnvironment.

▶ Play

LutGrading

Mesh Parenting

MeshInstance3D rendering under different parent node types.

▶ Play

Mesh Parenting

Model Viewer

Load glTF models with PBR textures and orbit camera.

▶ Play

Model Viewer

Motion Blur

Camera-based motion blur orbiting a scene of cubes.

▶ Play

Motion Blur

MultiMesh

1600 cubes rendered via MultiMeshInstance3D instancing.

▶ Play

MultiMesh

3D Navigation

NavigationMesh3D pathfinding with obstacle carving.

▶ Play

3D Navigation

Noise

Perlin, Simplex, Value, and Cellular noise side by side.

▶ Play

Noise

Normal mapping

vertex-tangent TBN with a derivative fallback.

▶ Play

Normal mapping

Occlusion culling

a Hi-Z GPU cull drops objects hidden behind a near wall.

📄 Docs

Occlusion culling

FFT ocean

an open sea driven by a Tessendorf spectrum, not analytic waves.

▶ Play

FFT ocean

Particles

CPU ParticleEmitter: sub-emitters, collision, trails, and deterministic seeding.

▶ Play

Particles

3D Path Follow demo

camera rail fly-through around scattered geometry.

▶ Play

3D Path Follow demo

Mouse picking demo

click cubes to change their colour.

▶ Play

Mouse picking demo

Planar reflection

a mirror floor reflecting the scene above it.

▶ Play

Planar reflection

Planar water

a Gerstner sea reflecting the world above it with a true mirror.

▶ Play

Planar water

Point and spot light shadow demo.

Demonstrates: - Point light shadow casting from a central position - Spot light in a corner illuminating a specific area - Multiple objects casting/receiving shadows - Camera orbit controls

▶ Play

Point and spot light shadow demo.

PostProcessParity

Desktop parity for WorldEnvironment post-process knobs.

▶ Play

PostProcessParity

Irradiance probe volume

baked diffuse GI colour-bleed onto a moving object.

▶ Play

Irradiance probe volume

Rain and wetness

a GPU downpour over a rain-slicked courtyard.

▶ Play

Rain and wetness

Raycast demo

click a cube in the grid to highlight the ray hit.

▶ Play

Raycast demo

ReflectionProbe3D

Local cubemap reflections inside a probe box.

▶ Play

ReflectionProbe3D

Screen-space refraction

a glass slab reads the scene behind it and bends it.

▶ Play

Screen-space refraction

Render Layers Demo

3D object visibility via render layer bitmasks.

▶ Play

Render Layers Demo

Render scale

the 3D scene at half resolution, the UI at native resolution.

▶ Play

Render scale

RenderView

the main scene from a second camera, shown on an in-world monitor.

▶ Play

RenderView

Rotating Cube

Smallest 3D scene.

▶ Play

Rotating Cube

Shadow quality demo

cascade debug visualization and texel snapping.

▶ Play

Shadow quality demo

Skeletal animation demo

articulated arm with bone-driven wave motion.

▶ Play

Skeletal animation demo

SSAO Demo

Screen-Space Ambient Occlusion visualization.

▶ Play

SSAO Demo

Screen-space global illumination

coloured light bleeding between surfaces.

▶ Play

Screen-space global illumination

Screen-space reflections

a glossy floor mirroring the scene above it.

▶ Play

Screen-space reflections

SubViewport

render a live 3D scene to a texture, shown on an in-world monitor.

▶ Play

SubViewport

Per-view occlusion

a SubViewport runs its own Hi-Z cull for its own camera.

📄 Docs

Per-view occlusion

TAA

Temporal anti-aliasing stabilises a high-frequency scene under an orbiting camera.

▶ Play

TAA

TAAU

temporal upsampling reconstructs a sharp image from a half-resolution render.

▶ Play

TAAU

Node tree text demo

3D cubes with text textures + 2D text overlay + Japanese text.

▶ Play

Node tree text demo

Textured cubes demo

generates checkerboard textures and renders them.

▶ Play

Textured cubes demo

Volumetric Fog

Ray-marched single-scatter fog + localised FogVolume3D.

▶ Play

Volumetric Fog

Water surface

an animated Gerstner sea refracting the scene below it.

▶ Play

Water surface

World 2D in HDR

2D that tonemaps and blooms with the 3D scene.

▶ Play

World 2D in HDR

LLM NPC Flavour

a night guard whose barks come from a low-frequency LLM brain.

▶ Play

LLM NPC Flavour

Node-Gen

generate a Node subclass from a description, validate in isolation, run it.

📄 Docs

Node-Gen

Audio demo

generates and plays test tones using the MiniaudioBackend.

▶ Play

Audio demo

Spatial Audio

3D positional sound with distance attenuation.

📄 Docs

Spatial Audio

Lifecycle

the order node hooks fire, made visible.

▶ Play

Lifecycle

Properties

editor-visible, validated, range-bounded node values.

▶ Play

Properties

Debug Draw

Wireframe boxes, spheres, axes, and rays.

▶ Play

Debug Draw

Debug Overlay

the engine’s built-in on-screen diagnostic HUD.

▶ Play

Debug Overlay

Python Console

Embedded interactive Python REPL in a terminal widget.

▶ Play

Python Console

Terminal Demo

Interactive terminal emulator running bash.

📄 Docs

Terminal Demo

Dialogue Box

NPC dialogue panel with a continue prompt.

▶ Play

Dialogue Box

Touch gesture recognition demo

tap, long press, swipe, pinch, pan.

▶ Play

Touch gesture recognition demo

HUD Anchors

a game HUD pinned to screen corners that scales with the window.

▶ Play

HUD Anchors

Internationalisation

switch UI language and watch plural rules update live.

▶ Play

Internationalisation

Grid Inventory

a 4x3 grid of selectable item slots.

▶ Play

Grid Inventory

Menu Bar Demo

MenuBar with PopupMenu dropdowns and z-ordering.

▶ Play

Menu Bar Demo

Pause Menu

a full-screen modal overlay with stacked buttons, toggled by a key.

▶ Play

Pause Menu

Settings Screen

centred panel with slider, checkbox, and dropdown controls.

▶ Play

Settings Screen

Splash Screen

the branded boot splash and a reusable loading screen.

▶ Play

Splash Screen

Text Input Demo

validates character input, focus routing, and scissor clipping.

▶ Play

Text Input Demo

Visual demo for the StyleBox theming system.

Shows all theme presets side by side. Each column applies its own theme to the widget subtree so backgrounds, buttons, inputs, sliders, checkboxes, and tabs all render with the correct colours. Buttons are shown in every state: normal, hover, pressed, disabled, focused.

▶ Play

Visual demo for the StyleBox theming system.

TreeView Demo

live scene tree inspector with expand/collapse.

▶ Play

TreeView Demo

Undo/Redo demo

move cubes and rewind with Ctrl+Z / Ctrl+Shift+Z.

▶ Play

Undo/Redo demo

Widget Showcase

Tour of every major UI widget category.

▶ Play

Widget Showcase

Bouncing Balls

Properties, velocity, and screen-edge collision.

▶ Play

Bouncing Balls

First Scene

Open a window and add a node.

▶ Play

First Scene

Gem Collector

your first 3D game.

▶ Play

Gem Collector

Input and Movement

drive a node from the keyboard with input actions.

▶ Play

Input and Movement

Monolith to Composed

structure a game as small, single-purpose nodes.

▶ Play

Monolith to Composed

Nodes and Signals

build a scene tree and wire nodes together with signals.

▶ Play

Nodes and Signals

Pong

Complete two-player game in ~150 lines.

▶ Play

Pong

Balatro-Feel

Card hover / select / drag / play, pure tween expressiveness.

▶ Play

Balatro-Feel

Casual Crusade

js13k card/dungeon, domino-card placement with BFS scoring.

▶ Play

Casual Crusade

Claustrowordia

LD50 winner, UI tweens, audio juice, 52k-word dictionary scoring.

▶ Play

Claustrowordia

Clear Code Zelda

Top-down ARPG, y-sort, particles, state machines, upgrade UI.

▶ Play

Clear Code Zelda

Clumsy Bird

Flappy-style endless flyer with audio, score and restart.

▶ Play

Clumsy Bird

Dodge the Creeps

Godot’s first 2D tutorial, wandering mobs, top-down dodge.

▶ Play

Dodge the Creeps

GDQuest Open RPG

Overworld + turn-based combat, party of three vs enemies.

▶ Play

GDQuest Open RPG

HeartBeast Action RPG

The canonical Godot tutorial port, sword + roll + enemies.

▶ Play

HeartBeast Action RPG

HexGL

3D anti-grav racer, Catmull-Rom banked track, lap-attack, AI ghost.

▶ Play

HexGL

Hextris

Hex puzzle, engine test for touch input (GPLv3 upstream).

▶ Play

Hextris

Mr. Rescue

Arcade firefighter, fire spread, rescue civilians, procedural building.

▶ Play

Mr. Rescue

PirateMaker

In-game level editor + play loop, proving editor = runtime.

▶ Play

PirateMaker

Procedural Planets

Lague’s quad-sphere tutorial, multi-octave noise, biome ramp, IBL.

▶ Play

Procedural Planets

Q1K3

First-person Quake-style FPS, 3 weapons, 5 enemy AI states.

▶ Play

Q1K3

Asteroids (raylib classic)

Vector-space rotation, wrap-around physics, score HUD.

▶ Play

Asteroids (raylib classic)

Snake (raylib classic)

Grid logic, score HUD, one of three raylib classics.

▶ Play

Snake (raylib classic)

Tetris (raylib classic)

Grid logic, rotation, line clears, score HUD.

▶ Play

Tetris (raylib classic)

SNKRX

Wave-based arena, particles, screenshake, slow-motion, bloom.

▶ Play

SNKRX

Klondike Solitaire

Full Klondike with drag-drop spring/tilt, undo, save/load.

▶ Play

Klondike Solitaire

Squash the Creeps

Godot’s first 3D tutorial, jump on mobs, character controller.

▶ Play

Squash the Creeps

Tanks of Freedom

Isometric turn-based strategy, three units, four buildings, AI opponent.

▶ Play

Tanks of Freedom

Tiny Yurts

Isometric grid, BFS path-following agents, drawable routes.

▶ Play

Tiny Yurts

Tower Defence

Waves, placement, currency UI, navigation curves.

▶ Play

Tower Defence

Pixel Runner

Clear Code’s Pygame intro, endless runner, sprite + input + collision.

▶ Play

Pixel Runner

You’re the OS

OS simulation, process state machine, CPUs, RAM/disk swap, I/O queue.

▶ Play

You’re the OS

Afterglow

an original precision platformer (SimVX flagship demo).

▶ Play

Afterglow

Asteroids 2D

Classic arcade game with wrap-around physics.

▶ Play

Asteroids 2D

Asteroids 3D

Top-down arcade game with 3D objects.

▶ Play

Asteroids 3D

Bloom

Grow your colour, starve theirs. One tap a turn.

▶ Play

Bloom

Deep Sea Aquarium

Bioluminescent underwater world with boids and bloom.

▶ Play

Deep Sea Aquarium

Dungeon Explorer

2D top-down dungeon crawler.

▶ Play

Dungeon Explorer

Pad Grid

Pad instrument with recording, loop, and training modes.

▶ Play

Pad Grid

Physics Sandbox

Visual demo of the SimVX physics engine.

▶ Play

Physics Sandbox

Planet Explorer

Infinite procedural flyover with terrain and day/night cycle.

▶ Play

Planet Explorer

Platformer

CharacterBody2D with gravity, jump, and platforms.

▶ Play

Platformer

Space Invaders 2D

Rows of enemies, bullets, and wave progression.

▶ Play

Space Invaders 2D

Space Invaders 3D

Classic arcade game with 3D meshes.

▶ Play

Space Invaders 3D

Squad Commander

a hybrid RTS where a low-frequency LLM commander re-prioritises a classical squad.

▶ Play

Squad Commander

Tic Tac Toe

Classic two-player game built with UI widgets.

▶ Play

Tic Tac Toe

Tic Tac Toe 3D

3D board with animated X and O pieces.

📄 Docs

Tic Tac Toe 3D

Tidewater

an FFT sea meeting a mirror-calm river under golden-hour rain.

▶ Play

Tidewater
Next
Animated Sprite
Previous
Patterns
Copyright © 2026, SimVX Contributors
Made with Sphinx and @pradyunsg's Furo