teamduck / gametube

Collection of multiplayer WebGL games.
http://team-duck.com
10 stars 2 forks source link

Create a 3D IDE for games in the browser, using the Duck programming language and TeDGE #1

Open gregtour opened 9 years ago

gregtour commented 9 years ago

Wouldn't it be cool to be able to make games in the browser with a 3D editor? With some simple scripting and a lot of free resources it could be possible. Basically, using XML or some other format to codify the state of a game, and using Duck scripts to control entity behavior, it would be possible to make simple games or demos in the browser.

First things first, there needs to be a JavaScript implementation of the Duck language. One that has great performance. This should be possible once the Duck language is where it needs to be.

Then there needs to be WebGL libraries that take care of all the dirty work. Making shaders, loading assets, data structures for optimizing rendering, until Duck games are just controllers for the TeDGe engine, which handles all the optimization.

Finally, we need a set of basic models and tools for games. An IDE, with multiple panes. Height map generator. 30 random meshes for games or game characters. Obstacles and levels. Cars, karts, balloons, animations. Texture files and different skins for things.

Then making a racing game is as simple as uploading characters, designing a menu, putting in way points around a map made with the spray paint function and presto.

Someone else can make their own 3D space shooter, or whatever. The idea is to make GameTube a reality.

Racing, shooting, puzzle, action, adventure games. Starting small, adding libraries for 2D graphics with sprites, and getting sound fx working, that's a beginning. But then making a sandbox for three-D stuff is a priority. Finally, getting to the point where more immersive games can be made, with checkpoints, saving and achievements, would definitely be great. Party games for creating the most interesting mini-game in 3 minutes, stuff like that. Supporting multi-play online with some sort of game server architecture.

The possibilities are limitless, but it all depends on how much work gets put in to this project. It's time to start working on getting something up and running. Zapow!

gregtour commented 9 years ago

I guess an initial goal would to be to have a script editor on the side, a canvas window on the top right, and some sort of asset selector on the bottom. Then coming up with a command reference and example to make characters move around the screen with inputs.

Plus, then, a simple Publish or Generate button that creates a webpage that can be shared. Instead of using the whole window, it should probably create a popup window that's smaller than the whole screen, or put a border around it plus a title, author and links back to game creator.

All in all, I would say this milestone puts it at 50% more difficulty than making remote-remote. But it would be substantial enough to prove that we were the first team to get to this functionality.