Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Thorndraco

Feature Request: Lesser feature idea.

Recommended Posts

Well I just woke up and this popped into my head after remembering making a map for the original doom in a DOS based editor (can't remember the name) about eight or so years ago. I'd planned out the whole thing on graph paper, but it wasn't exactly easy transfering my idea to the editor.

So what I propose is simple in concept, but I don't know about complexity in code. Basically just the ability to load images into the background of Doom Builder so people can create blueprints beforehand if they wish and then trace them out. It's a feature that I think would save people alot of time and hopefully encourage people to plan out their maps a bit more.

I don't think I've ever seen this feature in any other map editor for any game.

Share this post


Link to post

I was wondering about this very much feature... I used this feature in AutoCAD when i need to rasterize terrain maps. I think this implement could be quite useful, nice idea.

Share this post


Link to post

Hm. Yeah this does appear in a lot of rendering programs... I think this could be quite useful. But I usually just sketch out my maps, not down to the last thing. I usually just sketch to get the juices flowing.

Share this post


Link to post

I'm just going to go ahead and say that this would be a useful feature for me as well.

I use this quite often when I'm making 3D models/scenes.

Share this post


Link to post

yea i like the idea to. But the background pic needs to be movable and resizable (so make the snapping work etc.)

Share this post


Link to post
robindegen said:

yea i like the idea to. But the background pic needs to be movable and resizable (so make the snapping work etc.)


I agree with the moving and resizing bit, though not sure what you mean by the latter.

I also think that if the feature where ever added at any point that the image should be lockable and unlockable so it doesn't end up getting in the way instead of helping.

Though I can't exactly imagine this as being a feature that would be too easy to add. May not be worth the effort needed in the end. Don't know myself since the extent of my programming knowledge basically only covers Q-basic, batch scripts, and HTML.

Any thoughts if you wish to share them, CodeImp? Good/Bad?

Share this post


Link to post

i'm working on a 3d map editor and in mine it's easy to add. I dont know if he used c++ or visual basic for the editor part, but if it's a picture box, it's easy to add :)

Share this post


Link to post

Its not easy to add, in fact, with the way DB renders its impossible. Its a picturebox to which the 2D view is rendered, but the VB code gives a pointer to the graphical memory of the picturebox to the C/C++ part which renders everything very lowlevel (pixel plotting). This is very fast, but im limited to 256 predefined colors, of which most are already in use by the many colors and shades needed. I dont think I can make this feature happen any time soon, then again, its also a somewhat odd feature IMO.

Share this post


Link to post

I'ts not an odd feature, most 3d modelling programs have it. Somebody draws a map (when they're bored in class or something), scans it, puts it as background and just draws it in the editor. Take a look at blender or 3d studio max, they have it to :)

my 3d map editor just uses the picturebox's line function. When smartly used it's fast enough to controll even 3 views at once. It took me a while to get it fast, but i'm there now :) . I would like to learn about the pointer to c++ though, any tuts?

Share this post


Link to post
CodeImp said:

Its not easy to add, in fact, with the way DB renders its impossible. Its a picturebox to which the 2D view is rendered, but the VB code gives a pointer to the graphical memory of the picturebox to the C/C++ part which renders everything very lowlevel (pixel plotting). This is very fast, but im limited to 256 predefined colors, of which most are already in use by the many colors and shades needed. I dont think I can make this feature happen any time soon, then again, its also a somewhat odd feature IMO.


Ahh, okay; I think I grasp what you mean. It's not that odd of a feature when you compare how simmilar map creation in DB is to many CAD applications. Overall though I don't think it's a necessary feature for something like DB, just more of a bonus — a sort of relic from what I envisioned being the perfect editor as a kid.

Share this post


Link to post
robindegen said:

I would like to learn about the pointer to c++ though, any tuts?

Not that I know of, but I could point you to the relevant parts of the DB source :) See modRenderer.bas in the VB project. The function InitializeMapRenderer() and the functions it refers to basically make the paletted bitmap and the pointer. See the C++ workspace for the functions that do the actual rendering. The file renderer.cpp has functions for the pixel plotting and the file map.cpp has functions which use those to render the larger groups of data (all linedefs, all vertices, etc).

EDIT: Oh and about passing pointers and other VB <---> C++ stuff in general, see the example "Best of Both Worlds" on my website.

Share this post


Link to post

i think i'll menage to get something working thanks :) . I'm trying to become more "advanced" with visual basic and/or the visual studio combination. I think most people underestimate the vb goodness. But first,... vacation until friday ^_^

edit:
one more thing. How much of the 3D mode is made in VB? I see some declares to the builder.dll, but there's also a lot of dx 8 coding (and the type lib is enabled). For the 3D view of my map editor i need it to be visible perminantly and the cubes (and other brushes) need to change right away when edited in the 2D views (like most map editors). It's a quake like map, but in my experiance, directx in vb is kinda slow for things like that. I've learned a lot from directx 8 in vb while programming on my 3d engine, but it's having speed problems (and the map isnt even that big, smaller then a normal quake map)

Share this post


Link to post

The actual 3D rendering is pure VB stuff. But the C++ parts do the BSP walking stuff, which generates a nice list of the visible things, so only what you see is rendered.

Share this post


Link to post

would this be possible with quake like maps, or does it calculate this specificly for doom like raytrace maps?

Share this post


Link to post

I think the Quake BSP trees are quite different from Doom's BSP trees, because the Quake maps allow real 3D architecture and Doom maps dont. However, the concept of a "BSP tree" is not limited to Doom only, its a common solution to arrange and search through data and if Quake uses this, I bet the technique used is not far from what Doom uses.

Share this post


Link to post

in quake there's no actual limit to floors and ceilings above each other, doom is really 2d from some point of view, but quake-like maps aren't. They can have 3 cubes floating above each other in a room.

The problem is, i dont know as much about c++ to solve things like this. I'm following a tutorial (400 pages) about dx 9 in c++ 6, it starts with the hello world app, and ends with a 3d game. I hope that'll help. I dont need much in c++, i just gotta speed my engine up :)

Share this post


Link to post

hey, can you gimme a link to that tutorial , or where i can buy it if it costs anything...:)

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×