Are There Any Video Tutorials for Coding Level Editors?

Started by
6 comments, last by wizardpc 10 years, 11 months ago

Hello! I was just wondering if anyone had made or knows of a tutorial series, preferably video although written is fine, that takes you through the process of coding a simple 3D level/map editor.

Not something that teaches you how to program while doing this, although if it does that's OK. Just a programmer to programmer, step-by-step, this is how you code a level editor sort of thing.

If you know of anything could you post a link? If you're itching for a video tutorial challenge, you may consider this a request.

Thank you!

You create reality in your mind,
Before experiencing it as reality,
So if you want to change something,
First change what you think about it.

Blog

http://adifferentpath.blog.com/

YouTube

http://www.youtube.com/user/DreamBlissFlows

Advertisement

I doubt that you can find such thing. Programming level editor can be seen as programming regular programs just, these have special functionality. You would start by creating window and the rest of the window related stuff (like buttons, tool bars, etc), and also rendering your level to specific part of the editor window or separate window to see what is happening as you create your levels. Once you know how to put stuff on screen, it will become simple matter of making program that can manipulate 3d objects and such to place them as you would wish, and do rest of level related stuff.

My preferred way of making a 3D level editor (and also 2D) is to not write one, but instead write an export plugin for a proper ready-made 3D editor. (Maya, Blender, etc)

Any UI-programming, and specially an editor, is a lot more work then one might think.

Also has the advantage of not having to write tools to import/convert models from your 3D editor to your Level editor, since they already are in there!

Don't know of any tutorials, but I'd be willing to cough up the code to the 3D level editor for my hobbyist game engine. It doubles as a project manager too! I made it compile my code into the actual game as well as a plugin for the editor that allows you to place objects with game-specific functionality into the scene. Anyway, if you want the source, I'd be happy to share it. I need to go in and refactor the code before I feel comfortable making it open source :P It uses my custom game engine, which uses Irrlicht for rendering, along with wxWidgets for UI.

Current Project

World Storm

out our Android app! (My roommate and I)

https://play.google.com/store/apps/details?id=com.drsupersocks.ninja

I don't know of any specific tutorials. I feel like a World Editor tool is best used with a game in mind. You could use something like Unity which has an Editor to make any game, but thats the reason to try out Unity. If you want to create your own, you need to think of your game or what you want to use it for, what features you want. And program it like you would any game.

Every world edtior is really going to have a few common parts.

-You need a way to visually see the world. Be it a 2D world or a 3D world.

-You need UI (buttons, dropdowns, textboxes).

-You need a way to import and export data. (meshes, the scenegraph, etc).

I just finished a custom world edtior for my 3D RPG game I worked on. RPG's need a ton of tools and features, so I decieded for one monolithic tool: my World Editor. I had features such as

-Placing Objects (Trees, Rocks, bridges).......

-Placing NPCs

-Placing Enemies

-Editing Enemy Data (Hp, attack, loot, gold, exp)

-Designing Quests (start text, end text, start NPC, end NPC, loot, gold, exp)

-Assigning Quests to NPCs

-Sculpting the Terrain (raising lowering terrain, smoothing, flattining)

-Painting textures on Terrain (Paint rock texture on side of cliffs, or a dirt road, or sandy beaches near the water)

-Desgning Items (Item stats like Str, Wis, Def, Attack, Agi, Int, equipment slot, icon etc.....)

Now, this was all very specific to my project. But using this tool, I could design the world, nay the game, exactly how I envisoned it. Down to controlling Stats for enemies and the quest lore etc...

Your game might be a platformer. This tool is probably way overkill and maybe something more tile based would be better? There are also some already made level editors you might try and look at. I think GameMaker is one? I could be wrong. Have a look at Unity as well. But if you are dead set on making one, think about your game, and what you might need. Decide if you want this tool to be generic so you could reuse it in other games, or if it should be specfic to your game and therefore you can narrow it's vision and scope down greatly.

Good luck!

Sorry (couldn't figure out how to edit my previous post).

I thought I might help guide you with some terms you can google and research. I don't know how much knowedlge you have in Game programming or even 3D graphics. (since that's the map editor you want to make). To start small, you can make the terrain out of something called a Heightmap. You could create this with an algorithim, generate it in code, or even load it from an image. If you want more control, you can raise lower vertices in your world editor tool.

And for rendering you could use Direct3D or OpenGL. Or you can look at Ogre3D if you want a Rendering Library. Once you understand how to Render triangles in a 3D space, you could start working on your world editor. Again it's hard to gauge how much of this stuff you already know, so Sorry if I'm repeating things that you are already aware of.

Hey thanks everyone for your replies!

I should have been clearer... I've been a mapper/level designer, non-professionally, since 1999 or so. UnrealED. TESCS, Deathmatch Maker - recently Sandbox and DeleD. I know all about what needs to be in an editor, how it should be designed, the features it shoudl have, and what I want to do. I haven't sat down and sketched everything out, but I have what to build covered.

What I do not have completely covered is how to build, hence this thread. In fact, I am not intending to begin building one for a little while as I wrap up getting intimtaely famillair with C++, OpenGL, DirectX and Windows Programming. Probably have to through WPF in there. I have the basics of programming down, but am not past the stage of very basic appliations. I have about a half dozen books to go through and some source code to study before I'm ready.

The whole point here is to have something to look forward to, a goal, something to aim for. You would have to know a little about me and my situation to completely understand this. Essentially I am looking ahead with some idea of what I would like to first begin building, once I have the ability to. I thought I would start looking and requesting tutorials early, so that when I was ready I would have the material I needed.

What I want to do is to build a very basic editor for Myst Online Uru Live. Currently the game is pretty much dead, and part of the reason why, outside its age, is that it is too hard and complex for the community to create and share ages. I would like to address that. Make a very easy to use tool, also very basic, that allows the import of models and a sort of "put the pieces together" design element like TESCS. No terrain or AI or fancy stuff yet. Just the ability to build an age using current or custom meshes, make a book for it, and have it all be as easy to do as possible. As my skills develop I may add more features, or I may even work on the game code.

At some point I would like to include Wings 3D within it for modeling, or make it work as seamlessley with Wings 3D as possible. Why not Blender? Because I can make something in Max or Wings 3D that would take me a few hours in Blender. Blender is too slow, too complicated, and too poorly designed. My apologies to any Blender fans offended. Wings 3D is the best Open Source/Free editor alternative I have found to date.

Interface design and documentation are my specialities. I know what I build will be very easy to understand and use. But developing this editor for Uru is just one step towards my eventual goal of making my own game engine and toolset.

So that's the plan. If you find a good tutorial, or heck, even a decent book, please let me know about it. Thanks!

You create reality in your mind,
Before experiencing it as reality,
So if you want to change something,
First change what you think about it.

Blog

http://adifferentpath.blog.com/

YouTube

http://www.youtube.com/user/DreamBlissFlows

Well, I also used wings3D. I actually have a seperate tool that allows you to load .OBJ files from Wings3D and then animate them in my custom format for my game engine. that said, you could do something like export into .OBJ file and load them into your editor. I too find Blender hard, but I'm not an artist, and can barely model anything. Just some basic buildings and such......

I think you taking a look at OpenGL, GLFW (for getting the window and gameloop up and running), HightMaps, .Obj files, should be more than enough to get a world editor up.

This topic is closed to new replies.

Advertisement