Skip to main content
GameDev.net gamedev.net
🔒 Locked

making a leval editor

Started by Stevieboy Jan 7, 2004 at 9:00 PM 5 replies 1.2k views
Original Post
Stevieboy
Stevieboy
Hi I''m thinking of trying to make a leval editor, has any one got any ideas on what would be needed, I''m not thinking of a complete leval maker at the moment, just something that will save vertex data to file which can then be loaded. Any suggestions woould be helpful.
UltimaX
UltimaX
3D Studio Max, Maya, Lightwave, Blender, Milkshape 3D, TrueSpace, ...

Or:

You can have a look here or google for a sample 3D level editor. I know the link has 3D level editors, it will give you a start.

-UltimaX-

"You wished for a white christmas... Now go shovel your wishes!"
hplus0603
hplus0603
What is the reason you want to do this, rather than use something regularly available, such as Maya, or 3dsmax, or Gamespace, or Radiant, or gmax, or Blender, or ... ?

Also, if it''s an editor, it should likely target some specific engine. Which engine would that be? The answer to your question depends a lot on which one it is.
enum Bool { True, False, FileNotFound };
Stevieboy
Stevieboy
I wanted to get something working soon, if you use maya etc, you still then have to parse the file when you import it, and to be honest those are the things I''m finding difficult, I''m only doing this as a 2d line editor, where you can click between x, y and z veiws, not a full 3d editor
chdennis
chdennis
quote:
Original post by Stevieboy
I wanted to get something working soon, if you use maya etc, you still then have to parse the file when you import it, and to be honest those are the things I''m finding difficult, I''m only doing this as a 2d line editor, where you can click between x, y and z veiws, not a full 3d editor


Not trying to be rude, but if you''re having trouble parsing an existing editor''s output, you probably want to stay well-away from creating your own editor...it''s a LOT more work, even for a very simple one. Inasfar as having x,y,z in a "2d line editor" --- I''m assuming you''re talking about orthogonal views? This is still very much a 3D editor, even though you''re not displaying a perspective view.

I''d recommend using AC3D or Milkshape 3d - both of these packages are very inexpensive, and provide simple vertex/polygon outputs that are *very* easy to parse (plus AC3D allows you to build very large levels). Also, if you like Q3Radiant, you can create and compile your own levels to an unlit/unPVS''ed BSP file --- GameTutorials.com has a simple and easy-to-implement BSP importer that imports level data using very few lines of code.

If you''re interested in creating a level editor from a sheer learning perspective, it is definitely beneficial to parse through an existing editor''s output first, anyway - that''ll give you a better sense of how things should be laid out where data structures are concerned, and using the editors gives you an idea of what features you might like in your own editor (especially when you want a feature that isn''t already there).

Finally, with AC3D (and I *think* with Milkshape), you can even create your own custom vertex/poly exporters using the SDK, thus saving you a lot of headache in creating an editor.

Good luck.
Stevieboy
Stevieboy
chdennis, thanks for your suggestions, I am doing this partly as a learning thing, I used to do some modding for the "Thief" game series and that used a line editor, so I''ve got some experience of that, also I have looked at accii xfiles in notepad to see how they are arranged. I have the milkshape stuff, -I thought it only meant you could make ecporters for existing files I didn''t think of it that you could use it to make your own file format, I might have another look at that, I still haven''t given up on my own one though
Fidelio66
Fidelio66
I''d recommend worldcraft 3.3. Not hammer (which is 3.4 of worldcraft) as it comes with a license that forbids you to use it for anything except making half-life maps. 3.3 is unrestricted.

You''ll have to write a converter to go from .map format to triangles. the .map describes brushes (boxes) using a list of planes, you need to intersect them to get the corner points and make faces and then turn those into triangles.

This document describes how to do it, if you go to his homepage you can download C++ source that does this.

Also see here and the links on the bottom of the page for more technical information.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.