Khorinis Scenery Demo / NETradiant BSP Loader
Community Forums/Showcase/Khorinis Scenery Demo / NETradiant BSP Loader
| ||
![]() This is a tech demo showing how to use the NETradiant mapper as a base for complex scenes and how to load them in Blitz3D. Together with my BlitzSky system, a complete day/night cycle is possible. For this demonstration I took "Orlan's Tavern" from the game "Gothic II" as a template. The whole scene has been built in NETradiant - geometry, UV coordinates and lightmaps. The map is stored in the Quake III BSP Format (a little bit customized) and loaded with an improved version of Zap's BSP loader. Here some screenshots (left: day, right: night, always the same perspective): Exterior View ![]() ![]() Bar Keeper View ![]() ![]() Inner view ![]() ![]() Outer View ![]() ![]() Roof construction ![]() ![]() The installation is very simple. Just download the current version of NETradiant and install my update over it, which contains the shown demo complete with source, models, textures for free use. Download Netradiant (ca. 19MB) Download Blitz3D Update (ca. 4MB) (I'm using the current snapshot NetRadiant 1.5.0, SVN revision 402 as of Sun Oct 4 20:01:15 2009) Just uncompress the NETradiant file to C:\ root and execute my update just after that, choose again C:\ root. Start NETradiant with radiant.exe and my demo is in the C:/ Netradiant/blitz3d.game/data folder. Using NETradiant is similar to id software's QEradiant or GTKradiant, there are many tutorials out there. NETradiant is very stable und runs even under Windows 7. You can compile a map in the menu "Build" with the option "Blitz3D: Khorinis Scenery Demo [Q3BSP Loader customized]". After the build you can see the result instantly calling my demo.bb! The second build option is for the BSP Loader of Blitz3D for direct compare the two functions. After a build with it you should rename the khorinis.bsp to khorinis_q3.bsp and build the map with the first option again. The Blitz3D BSP loader expects a 100% percent compatible Quake III compatible map and can't load my customized format with external and larger lightmaps. The following features are implemented yet: - parsing BSP geometry and create one surface per texture, recycle lightmaps - support for lightmaps greater than 128x128 (in my demo: 512x512) - automatic creation of a second, brighter lightmap for day shadows - parsing BSP entities and placing of models - rotating and scaling of models like recorded in Radiant - lights have flares obscured by geometry - complete day/night cycle - simple DX Torchlight to lighten up dark places - shadow intensity adjustable - direct compare with Blitz3D BSP loader possible Steering: - Q/A = move sun/moon (change time) - 1..2..3..4..5..6..7..8..9..0 = dawn->noon->midnight = predefined times - LMB = switch between Blitz3D BSP Loader and Q3BSP Loader - RMB = switch torchlight - SPACE = Wireframe Have fun with it! And take a look at the credits.txt in the blitz3d.game folder if you want to use parts of it in your own projects. Everything should be free to use. |
| ||
Looks very impressive, seeing the different scenes in day/night. I tried applying a massive skybox a while ago, this looks like an interesting alternative. |
| ||
Very impressive! Would be really nice if it works on miniB3D... maybe if I get the time I try to port it over to see how well it will work ;) |
| ||
Very nice work, well done! :) |
| ||
I did not notice this a week ago, so I am glad that "Ian Thompson" posted to bring it to my attention. It looks exciting - I'll take a look at it later. |
| ||
Puki - Just for the case you'll mention this flaw again: I didn't fix the BlitzSky bug you mentioned a while ago, I focused on the scenery and a working BSP loader instead :-| Slotman - I am sure this can be ported to Blitzmax / MiniB3D - I already bought BlitzMax a while ago it but I didn't spent much time with it. I think this is a job for somebody who already has experience with BlitzMax. |
| ||
I was mortified to see that control system back again. Is it a punishment or something? |
| ||
What do you mean exactly? I never heard any critics about the "control system". If it doesn't suit feel free to alter it - the source is included... |
| ||
lol Krischan. save your breath. |
| ||
It's the use of a ridiculous mouse-look system that I find strange beyond belief. In short, it is bizarre. Yes, I can change it, but it does not change the fact that it is ridiculous. I'd like to know the reasoning behind it - if there is any - ie is it a German thing or something - ie do you lot use this as standard? |
| ||
Yes, I use it as standard - it is easy to use for me. Again - you're the only person who complained about it - so I guess I can ignore this until you bring some arguments WHY it is ridiculous in your opinion or how YOU would improve or replace it... And I really don't know what my origin has to do with my system? Is this some kind of prejudice or something? After all, this control system is a central part of my secret plan to gain world dominion within the next 30 days, together with the Boys from Brazil using the "Blitzwunderwaffe" to achieve this. And you call it ridiculous? Ridiculous is to complain about something but don't suggest improvements. ![]() |
| ||
Well, it is kind of odd for me. Instead of just a normal FPS-type mouselook, it is more of a floaty/drunk mouse control - ie it is like the user (me) is drunk (intoxicated). I don't get it. |
| ||
LOL, cool pic. What Puki means is that there seems to a probem with maintaining a steady movement/framespeed. Turning/moving is jerky as a result. This looks like a problem with the game timing/frame tweening rather than the rendering speed, which is excellent BTW Krischan. Lovely scene too, one of the nicest I've every seen done in Blitz. |
| ||
I only have to move the mouse a bit and I can end up spinning about or fighting to bring the camera back the opposite way it is moving - sometimes I have to fight hard to keep control. |
| ||
Hmm, I never ran into such a situation here. puki, try this mouselook code instead, this runs *very* smooth here: Main Loop: replace FreeCam Function with FreeLook(BS_Camera,2) Add this to the code somewhere: If it doesn't help I don't know - could be the frame tweening Ian Thompson mentioned. You could remove the Frametweening loop and use a timer or just change Flip 0 to Flip 1... Has anybody else problems with the movement or jitter? |
| ||
Hmmm, tried this in my bothers old computer and it ran into problems(although it ran at a respectable frame rate on that), on my, more up-to-date one it runs fine. So its hard to recreate the error to try and fix it here. |