{"id":16397724,"url":"https://github.com/pixelpicosean/voltar","last_synced_at":"2025-03-21T02:32:33.721Z","repository":{"id":55892395,"uuid":"168839579","full_name":"pixelpicosean/voltar","owner":"pixelpicosean","description":"WebGL only 2D game engine using Godot as the visual editor","archived":false,"fork":false,"pushed_at":"2023-04-30T09:11:17.000Z","size":13722,"stargazers_count":28,"open_issues_count":6,"forks_count":3,"subscribers_count":4,"default_branch":"develop","last_synced_at":"2025-03-01T02:11:00.188Z","etag":null,"topics":["2d","2d-game-engine","godot","javascript","physics","webgl"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pixelpicosean.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-02T14:23:19.000Z","updated_at":"2024-06-07T17:40:00.000Z","dependencies_parsed_at":"2024-10-11T05:20:58.528Z","dependency_job_id":null,"html_url":"https://github.com/pixelpicosean/voltar","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pixelpicosean%2Fvoltar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pixelpicosean%2Fvoltar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pixelpicosean%2Fvoltar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pixelpicosean%2Fvoltar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pixelpicosean","download_url":"https://codeload.github.com/pixelpicosean/voltar/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244102760,"owners_count":20398386,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2d","2d-game-engine","godot","javascript","physics","webgl"],"created_at":"2024-10-11T05:10:51.554Z","updated_at":"2025-03-21T02:32:33.055Z","avatar_url":"https://github.com/pixelpicosean.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Voltar\n=============\n\nUse Godot as visual editor but write game in TypeScript, a magic web game framework :)\n\n## Prepare\n\nInstall build dependencies: `yarn` or `npm install`\n\n## Scripts\n\n`npm run start`: start dev server with live-reloading\n\n`npm run build`: build for production and copy `media` with compiled scripts to `dist`, also generate `.br` and `.gz` for files.\n\n## Godot Importer\n\nYou can edit scenes from Godot and then use the importer to convert **project setting**\nand **scenes** to JSON, which will then be loaded automatically. Voltar editor\nis deprecated in favor of the workflow with Godot and importer.\n\n### Rules for Godot support\n\n1. Scenes should be saved into the `assets/scene`, and uses assets located inside `assets` folder.\n\n2. Textures should **ALWAYS** go into `assets/image/*` and uses the texture packer to generated atlas exported to `media` folder. Otherwise it won't work.\n\n3. Single images that will be copied into `media` folder should be put in the `assets/image/standalone` folder, so they will be copied automatically (even after you modified).\n\n4. Bitmap font with BMFont format added to `assets/bitmapfont` will be automatically convert and copy to\n`media` folder too.\n\n5. 3D data formats like `.dae`, `.fbx`, `.gltf` and `.obj` are not supported. But those are still usable by **SAVE imported mesh data as \".tscn\" manually**. So basically any format supported by Godot become YES \\o/\n\n### Steps\n\nMake sure you've installed dependencies of the importer. In case you're not:\n`cd tscn \u0026\u0026 yarn` or `cd tscn \u0026\u0026 npm install`\n\nSetup Godot project (from project settings)\n\nCreate scenes, and save them into the `assets/scene` folder\n\nRun `node tscn/main` to convert project settings and scenes to `JSON`\nfile, and then import these files or preload them as assets in your code.\n(in VSCode you can press `F5`, and find configs in Jetbrains IDEs)\n\n### Supported Godot features\n\nMost 2D features and basic 3D support (no 3D physics and particles yet).\nCustom shader supported in a level (may not work with complex shaders right now).\n\n- [x] screen stretch mode/aspect\n- [x] `CanvasLayer`\n- [x] `ParallaxBackground`\n- [x] `ParallaxLayer`\n- [x] `Camera2D`\n- [x] `Path2D`\n- [x] `Node2D`\n- [x] `YSort`\n- [x] `RemoteTransform2D`\n- [x] `VisibilityNotifier2D`\n- [x] `Timer`\n- [x] `Sprite`\n- [x] `Control`, `Container` and most GUI nodes\n- [x] `Label`\n- [x] `TextureButton`\n- [x] `TextureProgress`\n- [x] `TextureRect`\n- [x] `NinePatchRect`\n- [x] `AnimatedSprite`\n- [x] `AnimationPlayer`\n- [x] Tween (tweens are no longer nodes, they are just data and runs through `tweens`)\n- [x] Input\n- [x] `CPUParticle2D`\n- [x] `TileMap`\n- [x] `Area2D`\n- [x] `RayCast2D`\n- [x] `StaticBody2D`\n- [x] `KinematicBody2D`\n- [x] shapes, font, curve\n- [x] `Viewport`\n- [x] `Spatial`\n- [x] `Camera`\n- [x] `MeshInstance` with primitive meshes and mesh with `escn` format\n- [x] `Cube`, `Quad` and `Plane` primitive meshes\n- [x] `Skeleton` and skeleton animation\n- [x] `DirectionalLight` with shadow\n- [x] `SpotLight` (no shadow support yet)\n- [x] `OmniLight` with shadow support (not perfect but fast)\n- [ ] `RichTextLabel` (WIP)\n- [ ] `RigidBody2D` (WIP)\n\n### Optimize build size\n\n1. comment unused exports in `engine/index` to disable modules not used\n2. uncomment export of PhysicsServer2D in `engine/servers/physics_2d` to enable physics support\n3. uncomment code to replace usage of `earcut` in `engine/servers/visual/visual_server_canvas` for 2D polygon rendering\n4. uncomment export of AudioServer in `engine/audio/index` to enable audio support\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpixelpicosean%2Fvoltar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpixelpicosean%2Fvoltar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpixelpicosean%2Fvoltar/lists"}