Looking forward to it too...hope we get more then 1FPS then..:)...BTW I think an unsafe versoin of it should be much faster. Don't you think? Then you don't need to texture passes.
- ØØ -
Printable View
Looking forward to it too...hope we get more then 1FPS then..:)...BTW I think an unsafe versoin of it should be much faster. Don't you think? Then you don't need to texture passes.
- ØØ -
Unsafe version of what? The DD algorithm doesn't really allow pointers because its all done with managed classes.
Have you used unsafe code in your camera (and the other 3d classes) at all?
The blitter is my next priority after adding a "paintbrush" feature to the editor. I'm not convinced it'll beat the method we already have though. If I can get the textures into an int array instead of keeping them as images then we'll get an instant performance hike. Its a damn shame that we can't allocate ram on the unmanaged heap for the lifetime of the game, that would be waaaaaaay fast.
I havn't unsed unsafe code at all. Can't say that I know where I should use it at the moment. But I can have a look at it again when we go beta. Most of my work doesn't allow unsafe code..:(
When I said unsafe I was thinking about your experiments with drawing with unsafe code. Wasn't that what you where doing? And if it was, then calculating the distance darkening and applying it there at the same time, means that you only have to go through the "array" once, and not two times as you do when you draw the semi transparent picture on top of the other.
- ØØ -
Well if I do per-pixel like I plan to, then I only go through the array once anyway, and then maybe use a transparent polygon afterwards with normal GDI+ code. If I was to calculate each pixel's brightness one at a time then it would slow things down a lot (I think) flat Poly's draw pretty fast so it should be OK.
I just need to understand how to break up the quads into trapezoids. Sounds like a toughy.
I don't think adding alpha blending would do to much of a damage. I might be wrong though...
- ØØ -
Well it would mean adding an int to each pixel on the whole screen.
Yeah, but I think it would still be faster then going through the whole array once more, don't you? I might be wrong. But you can test it if you ever get the time I guess.
- ØØ -
I'm not sure what you mean about "going through the array once more". There's only one loop in the renderer.
But if you first draw the wall with GDI+ and then Draw the distance darkening on top of that, then that is 2 loops right?
- ØØ -
No, its just one loop and a call to DrawPolygon().
Yeah, but what does DrawPolygon do? Doesn't it first render the wall, then the stuff on top?
- ØØ -
The MapViewer is comming along nicely now. Just a bit sceptical to how many cameras I should add, and how I should add them. Since the map size may vary quit a bit. hmmmm.
- ØØ -
OK, here is just a slapped togheter map viewer. It is pretty simple, since I don't want to spend time on this right now. There is still plenty of other stuff to do, like a web page for the project...phewww...:(
But anyway. Here it is:
http://www.noteme.com/doomsharp/release/mapviewer.zip
Press 1, 2, 3 or 4 to choose camera. THe controlls are a bit jerky. So you might have to press a few times..:)...And that is more or less it. Just change the map file in this zip file with your own map (same name) and then start the app.
Thanks
- ØØ -
Ladies and gentlemen...It is our great pleasure to present to you...
Distance Darkening :D
(there's still a problem with trying to render objects beyond the far plane, we have yet to find out where the problem is. This screeny doesn't show polygon replacement because at the moment that particular feature looks really crap so i turned it off :D)
Suuuure is pretty aint it?
I'm gettin nothin but a black screen when I launch the app...
Except for this error...
I take it you mean the map previewer that noteme made?Quote:
Originally Posted by timeshifter
Click the details button and post the top 30 (or so) lines of text.
Details:
Quote:
See the end of this message, instead of this dialog box, for details on invoking
just-in-time (JIT) debugging.
************** Exception Text **************
System.OverflowException: Overflow error.
at System.Drawing.Graphics.CheckErrorStatus(Int32 status)
at System.Drawing.Graphics.DrawImage(Image image, PointF[] destPoints, RectangleF srcRect, GraphicsUnit srcUnit, ImageAttributes imageAttr, DrawImageAbort callback, Int32 callbackData)
at System.Drawing.Graphics.DrawImage(Image image, PointF[] destPoints, RectangleF srcRect, GraphicsUnit srcUnit, ImageAttributes imageAttr)
at DSMath.TexEng.DrawPrimitive(Primitive thing)
at DSMath.ScreenTriangle.Draw()
at DSMath.WallPart.Draw()
at DSMath.Culling.DrawMap()
at DoomSharp.Form1.GameLoop()
at DoomSharp.Form1.Form1_Load(Object sender, EventArgs e)
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50215.44 (beta2.050215-4400)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50215/mscorlib.dll
----------------------------------------
DoomSharp
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Documents%20and%20Settings/David/Desktop/mapviewer/DoomSharp.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50215.44 (beta2.050215-4400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50215.44 (beta2.050215-4400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50215.44 (beta2.050215-4400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
DSMath
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Documents%20and%20Settings/David/Desktop/mapviewer/DSMath.DLL
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
ahh ok. That's the camera bug we're having trouble with.
Note's gone for the evening I think. I'll talk to him about it tomorrow.
PS, did you see the screeny of the proper game in post #795? :D
kk..
Can you try to move the camera in the map editor, and see if you still have the same problem?
- ØØ -
2 more screenies...
I saoooooo want to say some sleezy words to you right now..:)...by desk just went up 7" again..:)
- ØØ -
distance darkening is looking wicked w00sy
thanks for the previewer noteme, now i can see i have my floor textures the wrong direction, and that the blood seems to have worked out nicely, muhaha. This makes it much easier
Ok, here you go
the corrected and slightly changed one
btw noteme, for some reason the screen flickers alot for me, at first it was around every couple seconds, now bout 2 times a seconds, still usable just wondering if you were aware of this fault or not.
what coordinates should the camera be at?Quote:
Originally Posted by NoteMe
Guys,
you gave me a stone.. then you gave me a stick!
now look what i just beat out of that stone with that stick :bigyello:
i'm gonna work this thing to its limits
Quote:
Originally Posted by timeshifter
Non of them should at least be (0,0,0)..:).then you are bound to get a division by Zero error. But since I havn't cared too much yet about debugging that Cats hugly code, I am not sure what other coordinates that won't work. Sorry..:(
- ØØ -
It is not a fault...as I said...I slapped this togheter during a few minutes...:)..nothing I am proud of....:) Just so you could get a preview and be able to move the camera at least in 4 directions ++.Quote:
Originally Posted by Phill64
- ØØ -
Quote:
Originally Posted by Phill64
OHHHHHHHHHHHHHH my incredible guy...what have you done...that is soooo funny...haha...really really nice....Wolfenstein 3D here we come..:D You are the man...really really...:D
- ØØ -
It looks alright on the side angle too
That is soo freaking cool...:D...hehe...really really nice....:D
- ØØ-
1. its not you thats going to debug my code, that'll be me :DQuote:
Originally Posted by NoteMe
2. phill: calling our software "sticks and stones" is a real quick way to get kicked off the project :):):D j/k
3. phill: Nice work with the dead soldier, that technique had never occurred to me, very neat. :thumb:
This is hilarious :D
http://www.vbforums.com/attachment.p...chmentid=40380
It would be really cool if someone knew how to handle a 3D modell package, and could make a high poly old looking soldier or monster or someting, and then take screenies from many differne angles, so we could have some monsters running around too..:)
- ØØ -
lol, i meant from the point of view of what i have to work with by sticks and stones, 64x64 bitmaps which can only be arranged in cubes, a camera which i cannot place inside the map or in odd positions or angles because of crashes, and when viewing textures on angles they get bent so i still cant view them properly, hehe... map editor is great butQuote:
Originally Posted by wossname
hopefully eventually we'll be able to add a panel within a cube on a certain rotation with transparent abilities for scenic stuff like vases, pipes accross walls, and hangmen. Before you say it, i know thats much later stuff :D
hmmm.. i have blender, not really good at it though, much better at truespace which i no longer have, might give it another bash though.. at 64x64 it doesnt need much detail.Quote:
Originally Posted by NoteMe
but id imagine you only need 4 or 8 angles per monster given the nature of this, so it could be done without the use of 3d packages i think, although depending on how much animation is required, death could be 1 image that lays flat.
Quote:
Originally Posted by Phill64
You are a demanding little bratt arn't you..:D:D:D..just kidding...yeah there is still a lot to do. And then there is work too..:(..I wish programming stuff like D# was my job. I guess I would have killed my self with work then..:)
BTW thanks for all constructive criticism. We need all of your ideas. I have seen there is many people following this thread but are not posting. I would not be mad if they gave us a thumb up or down or left or right or what ever...:) It would only help us. We can never have too many ideas.
Thanks, still love your map. Looks 1337.
- ØØ -
Quote:
Originally Posted by Phill64
I can't remember how many angles the old Doom/Outlaws/Wolfenstein games had. But I guess it can't have been more then 8. It will take equaly long time to draw 4 or 8 angles in the game, it is just the artist that gets more to do. Thats why I thought a 3D package would be good, because when you have first made the modell then you can just turn it around. But then again, I am the guy that draw stick figures in Paint, so PLEASE don't listen to me when it comes to modelling or design..:D
BTW Truespace, can you make human beeing in truespace? I thought it was only for terrain generation and so on, like Bryce.....
- ØØ -
Well I can see now that you can make much more, and woooow...some of the artists are incredible...wow..just look at this:
http://www.caligari.com/gallery/Imag...Kheang%20Chrun
- ØØ -
doom enemy angles = 4
wolfenstien3d angles = 1 !!!! they always looked at you! even dead bodies spun at you!
actually, truespace is very very good at humans, it has very sophisticated skeletal and muscular simulation capabilities.
Actually, a little while ago i made a 3d modelar for isometric army tanks and jeeps etc cause i was planning on recreating a cross between RA1 & RA2 & Tiberium sun, it works on multiple bitmaps used as layers which are tilted and rotated around to make the object.
I could modify it to work on vertical layers instead of from the ground up (since your enemies r tall) and make a monster in that, could work out ok... might actually work with vertical.. if i finish the project n make the cross-layer drawing abilities, ill have a play anyway.. if not try my luck at blender.. or leave it up to someone else.. hehe..
EDIT NOTE: that image on the link is wicked, i bet it took 5 hours to render! that's almost movie level stuff
Yeah I hope he had a really good computer to even do a not detailed rendering on that car...must have taken ages.
Would be fun to see if you could get some enemies up and running. But I don't think you have to hurry up on that..as you see, we (at least me) has millions of small and big things to do before we get there....
- ØØ -
Phill; What do you mean? All we need is a (X, Z) coordinate for the enemy (and probably a movement vector too) and we can work out which of the sprites to draw, not sure what you mean by layering;
oh, no, that's just how my iso3d tank builder works.. which i just take images from on certain angles, was just saying i may be able to use it for this to, the layers is just how it builds and manioulates the object, you'd just get the resulted .png files from me and use your x,y and appropriate angle.
btw, im attempting to shove a dead man stuck on the roof in the corner of a room, haha, kinda tricky, its going to look good if it works though.
Ahh I see ok.
Thanks for the bug report phill, I wondered if anyone would notice it. I'll outline it here for everyone to see...
Yes it a strange one isn't it :) Its a bug in the dialogbox itself I think, because its passing your double-click from the dialog back to the form underneath for some reason. If you select files by single-clicking and then clicking OK then the problem doesn't occur. If you deliberately double click on a file that is directly over the grid area then you'll get a new cube at those exact coordinates. The only way I can think of to handle this bug is to set a timer running as soon as the dialog returns and tell the grid not to handle any mouse events until the system's double-click threshhold time has elapsed. Either that or insert an artificial delay into the save routine to make sure the phantom event dies before control is returned to the form, it'll only be a fraction of a second anyway.Quote:
Originally Posted by Phill64
I'm surprised MS didn't find this problem (well ok not THAT surprised :D)
I thought doom had 8 angles, I have a vague memory of seeing enemies at 45 degree anglesQuote:
Originally Posted by Phill64
45??
http://toastytech.com/dooma/DOOM1.GIF
- ØØ -
Yeah that looks 45ish to me.Quote:
Originally Posted by NoteMe
I think this is a proof...isn't..
http://toastytech.com/doomguys/DMGUYS11.GIF
[Edit] I am still not 100% sure though...
- ØØ-
hey w00sy or if you currently have it noteme
could you show me what this scene looks like with distance darkening?
see'ing if fake lighting (like wolfenstien and doom) will look alright
I know at least one thing for sure though, the rockets have 45 degree variants, I remember running around in avoiding the rockets of that cyborg guy, and that was the first time i noticed that there were 8 of them. Man that was long ago, I guess I have to install it again and check it out.Quote:
Originally Posted by NoteMe
Quote:
Originally Posted by Phill64
I am in Linux, and I don't think wossy uploaded the latest version yesterday anyway, something he really should have done, since I am suppoesed to fix the distance darkening bug today..:D...so sorry. Can't test it..:( Hope Wossy can though.
- ØØ -
Quote:
Originally Posted by kedaman
It is really hard to say if that green guy is going 45 deg towards you, or if he is going to the left...It might be that since his right leg is in front now, then it looks like he is 45 deg, but if his left fot where in front, then he would look like he was 45 deg back/left
perhaps some things had 2 extra angles when going towards you, some bosses may have it and as you say rockets (rockets would make sense).. i doubt they'd also have to going backwards though, id say most the enemies were only 4 angled
yeah that's true. But still I also have a memory of seeing that guy from behind but 45 degrees after walking a bit.Quote:
Originally Posted by NoteMe
//edit who knows it could be 60 degrees as well.
what I ment was more like 6 sides. Not sure if you got that...something like this. Depending on what foot that is in front.
Quote:
Originally Posted by Phill64
Yeah, it might be that some have 4 and some have 6 or 8. But it sounds like it will confuse more then anything thoug. But it still might be right.
- ØØ -
I see you have gotten better at drawing in paint ;)Quote:
Originally Posted by NoteMe
Quote:
Originally Posted by kedaman
That was gimp...:D..it is not ment for drawing..:D...BTW I can now see that my foot theory holds some truth, but also ruins my theory. There must be more then 6 pictures too:
Look at the red man in the middle here:
http://toastytech.com/doomguys/DMGUYS13.GIF
compared to the green man here:
http://toastytech.com/doomguys/DMGUYS16.GIF
can't say I see much of a difference thereQuote:
Originally Posted by NoteMe
I didn't upload it because I hadn't finished altering it. I'll finish off and upload later.
ok proof:
http://www.panelmonkey.org/gs/Cacodemonsheet.gif
note enter that in theaddress bar, since direct linking doesn't work.