newer 2.5d viewer
Community Forums/Showcase/newer 2.5d viewer
| ||
![]() YAY! finally floors! Ok, here's the new version of the WIP 2.5d vecter map viewer with editor... unfortunatley I had to lower the resolution... But I'm pretty happy with it so far. http://www.uploading.com/files/OL8312WW/3.zip.html includes code, images, readme & *.exe. |
| ||
I think you need a password to download the file? All I'm getting is the Beauty of Big Bear Lake ad! ;) |
| ||
i cant download it either |
| ||
EEEEK! :o! Ok... Fixed it... I removed the password... now just click on it and wait 10 seconds to download... sorry guys :( |
| ||
Interesting, but I'm curious why you are going backwards in technology? (this wheel has been re-spun so many times already..) |
| ||
plash: Simple; it's because I want to teach myself all this from the ground up instead of just jumping to Direct3d or openGL and using basic 3d maths and other peoples libraries. Besides, by doing this, you get to play around with all the code and come up with little nifty tricks that no-one really talks about much. Oh, and it's fun! |
| ||
what's it written in? bmax + raw opengl? And I also get a MAV when I hit the space key... |
| ||
it has a nice retro feel, you could create large worlds with this? |
| ||
Jeezus, tried to download and got multiple virus threats from AVG 8 :s This has nothing to do with the 3.zip file maybe the site your on I get MAV when hitting space |
| ||
MAV eh? Hmmm.... I'll double check the *.exe and the code... Sorry guys. Yahfree: It's written in Blitz3d, but only using the 2d commands... I think it would work in blitzplus and the old freeware blitz2d... but I'm not sure. Jeremy Paxman - Yeeeeeeeees: Yups, since I'm using Vectors, I don't think there's a size limit at all. I just had the small plane (the floor) because I thought having a floating entity in the middle of a void looked kinda cool... But it's easy to make the floor infinite and if I made a better editer with scrollng, the maps could go for miles. I'm thinking of doing a simple Ultima underworld-esque game crossed with nethack (If I can figure out a good algorithm for dungeon generation... any help guys?) |
| ||
although doom killed the method off i do kinda like the old one block wall maze games of old (dungeon master, captive, bloodwych althogh that had thinner walls too which made more sense to me) instead of having to make a 3d file of a level all you had to do was have a data file of some kind with floor wall door type north south facing door type east west facing floor switch wall switch north facing wall switch east facing wall switch south facing wall switch west facing and a few others for good measure and possibly all using just the 16 hex values in a text file eg 0 = Floor F = Wall and the rest inbetween (i say wall = F as i used to use colour blocks on paper when doodling years ago and used a similar method for 16 colour bitmap maps black nothing (floor) white wall (FFFFFF in rgb/hex) ) so although wolfenstien was one of the last games to use this method (however they layed out the level data files) you didnt need to invest in learning a 3d level editor (or dooms '2.5D') |
| ||
kalisme, I'm very interested in this stuff, can you explain how it works? Thanks |
| ||
Yahfree: I was actually going to type out a complete description of how it works (from constructing the types and viewing them through a camera vector), I still may finnish writing that but for now I'll just do a brief version... The map editor is pretty much a good explanation of how the maps work... the dot point vectors are placed and connected by the walls (lines connecting the dots)... Sprites are just vector points aswell. When conerting to "pseuodo 3d" (2.5d), the whole map is rotated and shifted so that the eye (camera) sits at 0,0 and everything visable will sit above "0" on the y axis... (meaning they sit at y points lower then 0... eg: -10, -520 and so on..). All the walls that are beneath the clip plane (0,0) are culled.... Walls that sit on the clip plane (one vector point beneath, the other above) are "clipped"... this is done using the gradient of the line and figuring out the X position of the point if it sits on a Y position of "0". Then each point is shifted (maniplulated?) by the perspective code... (just a short formula) The same is done to the Y point... (which is more of a Z point when converted to a 3d point). This displays the dot points in the 2.5d view... Then I render the rectangles... A bit like polygon rendering, but as squares... I just used the gradient between the two points. If that didn't make much sense (nevermind.. I explaimed it quite badly), it's just 3d mathamatics, but only using X & Y points to create a raycaster-ish looking engine, but keeping 3d polygon methods in mind. (hopefully that one makes sense). Oh, and floors are just using a flood fill and reconverting the plotted pixels back to there original points on the 2d map so I can figure out where it would sit. (I got the idea from reading an article about the DOOM engine on wikipedia.org) The fllod fill was just plotted down when the current pixel location didn't have any information in the Z-buffer. |