Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Work in Progress / Visible Worlds (Db/Dbpro portal compiler) - Info

Author
Message
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 6th Oct 2002 08:07 Edited at: 26th Mar 2011 23:28
Visible Worlds - In Beta
========================

Visible Worlds is alternative Portal / Vis compiler designed for use with such development tools as Dark Basic, Dark Basic Pro or Blitz 3D. The compiler is designed to work along side of your existing level system, not replace it. The process of building a portal for your own levels is done through a custom asc MAP format. So once your level creation tool can export a Map file, you can compile the object visibility separately. Too easy..

Rather than try and replace BSP, Visible Worlds acts as an alternative. By simplifying the rules of portal creation, this makes producing legal portals much simpler for users and designers alike, while still gaining a solid performance boost across the board. There are NO limits of on the geometry than can be used, meaning your levels can be made of anything. Also, it allows for new set of abilities for your worlds also, like pre-calced Level of Details, Visibility Importance culling, Way points, Dynamic Lights..

Current Basic Supported Features:

* Static + Rotated boxes.
* Solid + Transparent spatial regions
* Precalced object LOD
* Terrain Support

Anybody developing a (Public) World Editor for DB/Dbpro interested supporting the format should contact me..


Visible Worlds Home Page

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 6th Oct 2002 20:06 Edited at: 26th Mar 2011 23:28
There's an older runnign tech demo of a DB#1 portal on here.

Visible Worlds Home Page


(really old links removed)

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 7th Oct 2002 00:01
I'll need to talk to you later about this, no time right now - i'll email with the details on why later.
Nice update

[b] New interactive driving system... i like my new blue and black steering wheel [b]
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 13th Oct 2002 12:29 Edited at: 26th Mar 2011 23:29
Visible Worlds - Update
========================

The new beta now has full 3D preview mode. Still a few issues with it, but it's now coming to the last legs of feature development.

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 13th Oct 2002 14:28
sounds sweet...
there is some code i'm sure you'll REALLY wanna see - and i've been meaning to send it to ya for ages.
perhaps i'll have some time tommorrow

Holy jumping mother of god NOOOO!!!...
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 13th Oct 2002 20:27 Edited at: 26th Mar 2011 23:30
sounds interesting.. so what is it ?

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 14th Oct 2002 02:19
hehee... don't wanna say in public
its just something i never finished but i think you might be able to easily

Holy jumping mother of god NOOOO!!!...
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 15th Oct 2002 01:55 Edited at: 26th Mar 2011 23:31
Update:
========

New Stuff

* Visibility Importance culling
- This feature lets the user limit the level of importance upon objects that might be in view. So you clip the models if their perspective view size is bellow a certain range. I.e. You might have a small bush object with a camera depth of 16,000. The bush might only be big enough to be seen at 8000. meaning normally the object is being drawn, even though it doesn't make any different to the scene. SO now we can cull those..


* Way points Mapping
- Pre calc'ed way point map with AI..


Visible Worlds Home Page

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 29th Oct 2002 23:20 Edited at: 26th Mar 2011 23:31
Visible Worlds - V0.71 - Final Beta & Cosmetic's Stage
=======================================================

I've spent the bulk of the last few weeks fleshing out the app (splash screens, serials, adding way points, making and fixing a few new bugs). The current version 0.71 contains perhaps 98-99% of the app's functionally slated for the V1.0. What is mainly missing now is support documentation and dare i say it, some decent examples..


What is it:
===========

Visible Worlds is a stand alone portal compiler designed for use with Dark Basic, DB Pro, Blitz 3D and virtually any dynamic object based render engine. The tool creates lists of visible regions from every possible standing point within a world space. This gives a huge boost to performance to your application at run time (for me %100 for more) as this allows your engine to only render those objects that are either completely or partly visible. All other occluded geometry is not drawn.  

While this system is somewhat similar in concept to BSP support found in Dbpro / Bb3D. It does not have limitations upon geometry in regards to convex shapes and leak-less worlds by design. Since Visible Worlds uses regions lists rather than polygon level visibility. This makes creating a VW map and portal for your world a lot simpler, meaning compiling is faster and it fits DB & DBpro's object system perfectly.

The result, you can produce faster, more complex scene's / games, with zero effort from you. That's what it's all about !


Feature List:
=============

* Static & Rotated spatial regions. (solid & transparent are supported)

* Pre-calculated Regional Levels of Details

* Pre-calculated Visibility importance ( This allows the compiler to cull objects if their perspective screen size falls within a minimum radius (that of the bound box), so if you wanted to could have lots blades of grass models sprinkled on the ground. The only ones Db will render with VW are those that are clearly visible and above a 1 or 2 pixel screen size.. Meaning you don't noticed them appear at all..)

* Terrains (Height map support)

* Way Point Generation. (This is one of the more powerful tools of the Visible Worlds. Way Point maps will allow you calc complex line of sight or your way through a landscape, without bumping into objects. Ideally for path finding situations mainly. Currently it only supports 3D spatial way point map (treats space as huge block), but i'm in the process of adding two other types. those Being 2D ground level (for fps on a matrix situations) and 3D ground height.  

* Built in 3D map import view & Built in Compiled Portal Map View mode.



Map/World Editor Tool Support:
==============================

I was hoping that a few world/map editors would have support from the get go, this is looking unlikely. So I'll prolly just write importers myself. However, if you have your own tool kit, you can happily implement your own VW map exporter, with the included developer library (it's not rocket science) . So you can compile portals of your worlds too. Simple



Release:
========

It's looking like a release will happen this Friday/Saturday.. (nov 2nd or3rd) I'm guessing there will be a lot of head scratching and "what does it do?" questions. (Note to self. Write decent FAQ for once! ). The way things are going it could be ready to see a demo release around the weekend, but most likely some time next week. 

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 30th Oct 2002 08:17
nice!
someone is getting progressively closer to a decent world format for DB

i'm wondering how deep the calculations are... and if perhaps a C compiler would aid in doing the calculations nessary faster?
I remember the last few levels you noted how long the compile time was, and speed wise in DB althought an increade pretty damn'd good (almost 400%) still not enough after adding things like NetCode, Ai, etc...
that aside it still is very very promising

if you need a good level builder i'll see about finishing up the SDK for gameSpace Worlds ... give uses a nice familar setup for development

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 30th Oct 2002 15:11 Edited at: 26th Mar 2011 23:31
VW is not really a world format. It's designed to work along side existing formats not replace them.

The compiler is written in biltz2d. You'd prolly get a quicker inner loop in C. Although for many situations it'll compiled maps now in a minutes (seconds in some cases) as is. Making another port hardly worth the effort now. It won't always be written in blitz, but it is now.

Regarding run time speed through DB. Well that depends on the author & target hardware mostly. Portals are not a magic solution however. People need to be aware of this. The idea behind is is give 'more clock ticks' back to the user per frame. Pure and simple. How they use this extra time and what they can implement within their AI/Net/Collision etc etc allocations of time, is purely a matter of skill. However, any none time crucial events like AI/Los/Net should be interleaved.

Support for world editors is a bit of issue. It's tempting to just write my own at this point .. Although anybody can write Map export routines in VW format, from their world/level editors.. It couldn't be much simpler..

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 31st Oct 2002 11:47
guess so, but really if you look at it like that .map is the map format and bsp is just something that speed it up
i remember a good while ago that you mentioned that the current level took around an hour to compile, oki is downto a few mins/seconds but also isn't a greatly complex world
As with all formats portalisation isn't a perfect solution but the main point in it is to actually eleviate the program to draw only the areas of the map that are to potencially be seen - visibility take this a step further by placing within an array an index of the actual affected regions by the portalisation and cull all non essential triangles based upon the current camera vector beam

as taking away the displayed textured polygons to a minimal lets the card work on more complex things and as the whole setup is indexed to make it a simple lookup - means most levels will oftenly only render close to 2,500 polygons at anyone time
even in DB on a pentium2 266 - 4Mb Virge Dx this means you have around 3,000 polygons for everything else per scene plus enough room for basic calculations
the only real cost is memory, as most levels on adverage use about 10-15mb worth (upto 30mb for new games like UT2k3) then really it is a matter of a magical cure that gives DB a second wind.

Especially as i've mentioned I personally get a 400% speed increase running the demo on a machine of that spec
Might just be me but really think this is some truely innovative coding on your part and personally think that even though there isnt' much hype around this, i still think it is truely a remarkable achievement (^_^)

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 3rd Nov 2002 19:36 Edited at: 26th Mar 2011 23:32
The key part of all that, is 'a good while ago'. Obviously I haven't been sitting around twiddling my thumbs for the past few months. The compiler core today isn't even remotely similar to the earlier versions. There is some speed lost through over management of data at the moment. In terms of performance though, it's on the level of importance of optimizing the 'joy stick' reading code. The gain isn't worth the effort.

The main test map is 25000x*25000z. Original versions were actually taking hours (very first versions was taking days), Not today though.

The portal size can be compressed greatly, with little run time cost. Portals will still blow out for massive worlds, depends on the type you generate actually.. But there's not much I can do about it really.

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 4th Nov 2002 21:16
this is gonna be interesting to look over ... especially as right now i'm making a quake2 BSP v38 importer, so it'll be interesting to see how the speeds shape up

from the portal overlay it is interesting to know how you've actually accomplished this all, i mean my own efforts have lead to using a 3DGrid Node - works quite well, but not alot of testing finished yet

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 6th Nov 2002 17:00 Edited at: 26th Mar 2011 23:33
Erm i'm not sure what the relevance to loading q2 maps is, unless your thinking it's a bsp styled format. Nope.

It's strange actually how many alternative methods that have come to mind over the past few months. Some suit DB/Blitz very well, but most don't. Something for later..

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Nov 2002 19:51
well quake2's vis relies alot on Portals
personally i think id softwares method is quite slow in its present state, added my own spice to it for FMTbsp ... and certainly speeds up the vis to act like your in an enclosed space even over terrain patches

i'm kinda anxious to get Quake2 BSP38 working within DB Enhance/Pro because i'd love to see the speed compaired to my original CloneBSP format for DarkArena a year ago.

well earli days still

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 10th Nov 2002 19:47 Edited at: 26th Mar 2011 23:34
Sigh, I know q2 has portals... It sounded like you were thinking VW works in a similar fashion. Which is common misconception.

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 10th Nov 2002 19:57 Edited at: 26th Mar 2011 23:35
Visible Worlds V0.79
====================

The release of Visible Worlds has been held over to coincide with the launch of new UW site. Thankfully, this has given me some time to actually pen some documentation of sorts, plus add some more flesh and bones around the app. Most of which is not available in the demo, but I might as well get most of it done now. Some of it's just for my own entertainment ...

I've been working mainly on the speed of the preview render, plus preferences and gearing up for a possible future language support. Anyway, The results are pretty good considering the raw data through put. There's still some issues with Z buffer over/under flows. Most of which can be resolved, but the price is speed (divide per pixel). So for a totally perspective correct Z buffer the render crawls. So it's interpolated. It's only really noticeable when 2 large polygons intersect. You can see a bit of 'noise/wrapping' around the intersection.. It's more noticeable in lowres mode, but them's the breaks.

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 11th Nov 2002 03:38
well from what i can tell from the demos what the portalisation technically is ... is basically a setup of VIS specifically to a selection block of the level to make it visible when the visibility beam hits it - just like VIS but not such a deep level.
Probably gonna tell me thats wrong too, but thats what i've figured it is - just get rid of the unseen parts through a node tree which tells what objects to place together to hide/render

the Q2 portalisation is just level linking, as Quake2 technically is a single large level it is portalised to make sure each section is loaded and renderd seperately to make sure the cards memory doesn't overflow and to keep the vis and collision trees to a reasonable length

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 11th Nov 2002 18:21
erm, What's to derive ?. The basic process is listed in the read-me documentation of all the run time demos, which I've outlined countless times. So it's certainly not a secret how it works..

l8r,
Kevin Picone
[url]www.uwdesign.50megs.com[/url]
Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 11th Nov 2002 19:35
yeah erm... i never read it

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 13th Nov 2002 18:48 Edited at: 26th Mar 2011 23:33
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 13th Nov 2002 18:52 Edited at: 26th Mar 2011 23:36
Visible Worlds V0.85
=====================

A matter of Hours from home. That's right by the time i go to bed today the release version will be done. There's is one main routine to add. Zbuffered-Alphablended-Gouraud. Although I think i'll need to re-opt that convert frame to screen routine to handle a gouraud buffer rather then just the flat shaded one. As while it looks nice in 24/32bit mode. The frame rate isn't so pretty. But it's there for those who have the real power to run it in the demo. more of a nice little extra than real useful..

Blended add's a fair bit of overhead. The routine has to red the from frame buffer/ then blend the R/G/B's and write each pixel back. That's a lot of work for a 780*560(ish) window..

Anyway bellow is a last thread about VW. There's some current info about VW and the upcoming release of UnderwareDesign.Com etc etc

Visible Worlds Home Page

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 13th Nov 2002 21:00
Definatly something i'm looking forward to seeing

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 19th Nov 2002 21:47 Edited at: 26th Mar 2011 23:36
Visible Worlds V0.91 Public Beta
================================


Well you may or may not have been following the merry go round of development that has been Visible Worlds. While we wanted to release Visible Worlds and the new site in unison, time has beaten us. So to tide things over, and to get some more general feedback, here's perhaps the most overly hyped app in DB history..

This version is still not perfect, actually I doubt it ever will be. It's missing mainly in the example department, so if your feeling creative, feel free !. There's a couple of little issues remaining, some of which relate to the demo status of the beta, plus some things are removed. While this is demo/beta so it is limited somewhat.

Anyway, here's the link... it won't appear on my site until we move, unless it takes ages..

download is located here..


Visible Worlds Home Page

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 24th Nov 2002 08:13 Edited at: 26th Mar 2011 23:37
Visible Worlds V0.94
================

Finally after a week of hardly any programming (been
doing music stuff), work continues towards the final build of Visible Worlds.

The last few days i've been implementing dynamic region ability to the compiler and map formats. These regions gives us the ability to re-use objects through the world space from various object caches. This means regions that shared models (like trees, objects within house, or houses.. etc etc) are re-position at run time relative to the camera/viewer. Giving the impression of a solid and fixed world, while it's actually being built around them. You can imagine is like a slight of hand illusion..

The benefits of which range from things as saving loads gfx memory, faster world loading/creation, and of course it gives the user the impression of more detail.

Once this is tested a bit it's time for some newer tech demo's..



Also, Since RTG is currently Down here is the Direct Download to Verison V0.91

Download:
========



Visible Worlds Home Page

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 24th Nov 2002 23:19
OH MAN SWEEEEEEEEEEEEEEEEEEEEEEEEET!
i'm sure i'll have some more real comments later but for now that explains well what i think

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 2nd Dec 2002 14:38 Edited at: 26th Mar 2011 23:38
UPDATE - First New Tech Demo
====================

This tech demo shows off Visible Worlds ability to pre-calculate not only region Visibility, but LOD also. This demo (sources included) randomly creates a terrain landscape and positions tree objects upon it. These objects are intentionally high polygon, in an attempt to push DB classic beyond it's normal capability. The high detail tree's are over 1000 polygons each.

The loading process is SLOW as hell (That's DB's Object Loading ) , when trailing the higher object numbers (250 or 500). That's understandable though, as In the latters case, the world is truly comprised of over 500,000 polygons. This demo uses NO dynamic re-position (slight to hand illusions) to re-use the models through the world space from a cache. (that's the next tech demo


The demo includes 3 compiled portal files. These were all compiled with V0.95 of Visible Worlds. Each is compiled with different partitioning settings, however none of which are compressed.

The compile speed is pretty good, even on my p3 550.. 25000x,15000y,25000z


* 50 object world compiles in about 45 seconds (at 750 partitions).

* 250 took about 5 minutes

* 500 took 12minutes (500 partition, much higher ray sampling).

I've also include the creation source(s) for you to pick through. It's a bit of a mess really, as it was largely cut+pasted together..

If you have any questions, FPS reports feel free to mention them.


Keys:
====

F1 - Toggle Render From Portal ON/off


DownLoad 2 meg )
==============


Visible Worlds Home Page

hmm
22
Years of Service
User Offline
Joined: 31st Aug 2002
Location:
Posted: 2nd Dec 2002 18:46
Whats LOD? and what's that asc MAP format? How could I save objects and a matrix into MAP format from db?

This sound real good. Hope I can implement it into my future projects.

Kohai of UWDesign
22
Years of Service
User Offline
Joined: 12th Sep 2002
Location: France
Posted: 2nd Dec 2002 22:02
LOD stands for Level Of Details, which means the applications uses different 3D models to render objects, depending on their distance to the viewer. ( High poly for close distance, Low poly for far distance )
This method helps keep the overall polygon count of scene average and constant.

This latest demo show the benefit of using the VIS compiler, which calculates 'what to show' depending on the player position. As Kevin says : the poor man's BSP ! ^^

As to how implement it in your game, you first need an editor !
And we're not providing it ... BUT we we provide all the infos/help to help you integrate it in your own level-maker, or third party editor. ( Some routines are already present in the latest V0.94 of the VIS compiler).
On another note, we are working on 'starter kit' with a simple editor, to help you build something around the VIS routines.

So keep an eye on it ...

We'll keep you informed of the progress


Thx

[Kohai]
[url]www.underwaredesign.com[url] [url]kohaistyle.com[url]
pIII 733/256 Ram/Geforce 256
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 2nd Dec 2002 22:02 Edited at: 26th Mar 2011 23:39
Visible Worlds V0.96 - Dynamic re-positioning
================================

After something of a marathon debugging session, I haven't written much code at all today really, just been through the compiler head to toe chasing the cause of todays faults. Anyway, Dynamic re-positioning is now in a basic working state.

There's a few problems, some of which rely on the pre-validation of the Map file. Since Dynamic regions are based on a cache of each object, it's entirely possible the cache a user has allocated themselves, might be too small for some location in the world. (ie the player can see more than the allotment in the cache) If that occurs models will pop/vanish randomly..

I can pop and error when the compiler notices a vis list has overflowed, but the user will have to re-think their level design or just expand their cache sizes to suite or perhaps just ignore the error and hope the player doesn't notice it...

anyway, i'll prolly post some examples of this later on today.. The results of the first test are very promising. 250 trees on the terrain froma cache a of 50.. A few overflows.. Will ahve to tweek it a bit more..

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 2nd Dec 2002 22:16 Edited at: 26th Mar 2011 23:40
Hmm:

The Map format is described within the doc's of Visible Worlds. The package (release beta v0.91 link obove) comes with two DB sources libraries to help you make maps compatible with the compiler, and a library to re-load the compiled portal and show your worlds objects from any location within the world..

If you have your own map/world editor, you should be able to get it exporting VW MAP's pretty quickly. I'll be expanding the package over time. However once the basis solid enough, we'll be working towards a fairly simple placement editor designed for use with VW. Not sure when that'll be out.


Visible Worlds Home Page

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 3rd Dec 2002 01:13
man this is quite sweet... can't get the editor to work - perhaps i should open that file named Readme.txt now

i'm sure it has controls hehee

What i've seen is pretty fast thou, and extremely sweet for compiling.
I'll release a version of Qoole XP later this week with the map format built in for you guys (^_^)

Still having trouble with gameSpace's rendering system, for some reason once the buffer is full it doesn't dump for the resort and ends up using the enhancer to suck away processor power - my system works fine until i hit something like 20,000 object entities then it dies on me

hope no one is waiting badly for it hehee

Hopefully having Qoole setup for this will make it easier for you guys to simply work on improving the compilers (^_^)

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 5th Dec 2002 19:45 Edited at: 26th Mar 2011 23:40
Visible Worlds V0.98
================

Had a rather frustrating couple of days searching of a strange bug with the rotation of regions that don't have a central axis. On the surface it was negative reflection in the rotation routine. If you think about it, this effects everything right through the engine.. It's not a lot of code to update, it's just making 100% sure everything is matching up correctly with DB. So what you import and see in the region view, is what the vis compiler is using..

The previous L.O.D demos shows pop up with some of the tree's. In particular when a tree is on the other side of a crest. The reflected rotation issue meant the region wasn't truly representing the tree at all, but rather the reflection of this region, in other words it was thinking it was bellow the ground . So in most cases only a tiny bit of the box was visible above the ground.

I've now incorporated Dynamic regions into the compiler/source libraries and the internal 3d engine also. This presents an interesting problem to the run time 3d engine for validation. Since dynamic regions are cache driven objects, they don't actually exist in the uw3d or DB scene, so i've got to handle them at run time. You'll see some pop up if you've allocated too small an object cache for the number of objects within any given scene.. You'll prolly get a warning when this happens. It'll let you compile, since not all these objects might be visible, but it's a risk...

Anyway, i'll send out some new beta's of this version and prolly make a new public release beta this weekend. All i've got left now is adding dynamic LOD regions and compression. That's next weeks little project.


Visible Worlds Home Page

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Dec 2002 08:27
i'm gonna finish this format for Qoole and it's gonna be obsolete by the sounds of it hahaa

i hope the compression doesn't add too much to it so i can jut edit easily within an hour or something
Well 1.0 sounds likes its shaping up very nicely atleast

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 6th Dec 2002 13:46
The map format is the same as earlier version(s), although it has changed a little over the past few months, but it's pretty fixed now, as i'm just adding new region types to it..

Compression is an interesting problem How long that pass takes will depend mainly upon the mode selected. I can't see the sequence compress pass being real fast though.

It'll prolly take a few minutes for a sizable file, depending if I allow variable sequence widths or not.. It certainly won't be as effective as other packers though, but just enough to hold the file sizes to a reasonable level without impacting too much on the show/hide functions replay speed..

l8r,
Kevin Picone
[url]www.uwdesign.50megs.com[/url]
Van B
Moderator
22
Years of Service
User Offline
Joined: 8th Oct 2002
Location: Sunnyvale
Posted: 6th Dec 2002 16:59
Would it be possible to get Halo to support this format in Carto Shop?, seems like a good idea for folks who want the benefits of .BSP but with more control.


Van-B
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 6th Dec 2002 18:17 Edited at: 26th Mar 2011 23:41
We've had a look as adding CS support. I figure I can break up the output X models easy enough and thus build a portal from the parts. I don't think Halo would be too happy about that at the moment. I'll have to ask him...

Kohai is currently working on building a max scene exporter though with DB & Visible Worlds support.

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Dec 2002 21:04
Ahh oki... well effectively its done, probably upload tonite if i stay awake too much longer - was up from erm... Tuesday and right now i'm not exactly sure what day it is and feel like i'm gonna drop.
If you get a reply later i've uploaded it, if not then i'm out for the next 20-odd hours

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 7th Dec 2002 19:19 Edited at: 26th Mar 2011 23:42
Dynamic Multi Tree Demo (as Src DB #1)
======================================

This tech demo focuses on Visible worlds newest ability to build visibility lists from Caches of objects. This means you can dynamically re-use models from small cache of models through out the world space, and never have to calculate if their in range, or more importantly even visible. This saves you memory, loading time and of course being pre-calculated it's simply
faster..

The demo creates 600 virtual high/med/low poly trees on the landscape. It then uses 3 cache of 80 trees to render it.

The tree models however consist of over 1400 faces. So it can be deceiving just how much complex a scene is. There's NO LOD (Levels of details) used in this demo, it's just a test the dynamic re-position ability. So when there's 20 or 50 trees in scene, that's a fairly big mouthful for Db to render. But it act's as a good tech demo basis..

If you have any questions, really need some FPS reports feel free to mention them.


Dynamic Tree Tech/Test Demos at RTG
===================================

Visible Worlds Home Page

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 8th Dec 2002 04:33
Hehee I've been caught up in playing C&C Generals and TSO so much lately I've forgotten to actually give you the results.
Knowing my memory i've just tried the LOD Demo, and just tried the new Dynamic Tree.

I'm testing on my Coding System
AMD Duron2 800Mhz FSB 133Mhz w/ATA100
512Mb Sdram 133Mhz Ram
GeForce2 Mx 200 32Mbyte AGP 4x
Windows XP Corporation SP2 (Fat32)
DirectX 9.28 (Debug)

and my Render System
Dual AMD Optiron 2,500Mhz FSB A333Mhz w/ATA166
1,536Mb DDR2 600Mhz CLK2 Ram
GeForceFX 620 128Mbyte DDR2 AGP 4x
Windows XP Corporation SP2 (FAT64)
DirectX 9.28 (Retail)

ya know i've been told over the last few weeks that the Optiron has been renamed for public use, be interesting to know what cause i've been to thier site and the new processors are due March, and called Alchemy and Althon4
Be interesting to know which was it was renamed to because the AlthonMP is has just been released. ho well...

LOD Tree Test
Code System
50 - Portal On 61fps | Off 44-50fps
250 - Portal On 34fps | Off 18-20fps
500 - Portal On 26fps | Off 10-14fps
Render System
50 - Portal On 354fps | Off 280fps
250 - Portal On 316fps | Off 252fps
500 - Portal On 288fps | Off 229fps

Dynamic Trees
Code System
34-44fps ... 15fps with map open ... 26fps LeftBottom Corner
Render System
280-320fps ... 242fps with map open ... 271fps LeftBottom

Hope that helps, i can try on a few more setups thou

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 9th Dec 2002 02:13 Edited at: 26th Mar 2011 23:43
Thanks, that's fine.. it's just handy getting a good cross section of reports, for the individuals tech demos..

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 9th Dec 2002 20:20 Edited at: 26th Mar 2011 23:44
Dynamic LOD Trees Demo (DB#1 Source)
======================

This tech demo focuses on Visible worlds ability to build visibility lists from dynamic Caches of LOD (levels of detail) objects. This means you can dynamically re-use models from smaller cache through out the entire world space, and never have to
calculate if their in range, their LOD level, or more importantly even visible. This saves you memory, loading time and of course being pre-calculated it's simply faster..


The demo creates 500 virtual high/med/low poly trees on the landscape. It then uses 3 cache of 100 LOD trees to render it.


The tree models however consist of over 1400 faces. So it can be deceiving just how much complex a scene is.

Although, when there's 25, 50 or 100 trees in scene, that's a really big mouthful for Db to render. But it act's as a good tech demo basis..

Visible Worlds Home Page

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 11th Dec 2002 23:35 Edited at: 26th Mar 2011 23:44
Visible Worlds V1.03 - Compression
==========================

After another long and frustrating evening working on the compression passes. Finally it's now working effectively, surprisingly fast (small files though). It would seem also, I've made a tiny error with my calculations yesterday as to it's effectiveness. As while retesting a couple of small example maps the compression rate is actually averaging 50% to 60% already. This really warms a tired soul I can tell you...

So now we can create more dense and complex portals without it directly effecting the vis file size as much. Interestingly enough also now the compressed portals will zip better also. So this should help in keeping your download sizes to a minimum.

I did have another compression pass planned for addition, to complete release v1.00. I may however hold that over till next week so we can get this out and a Visible Worlds Xmas competition underway. A tad rushed, but it seemed like a good idea at the time..

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 13th Dec 2002 19:02
well the format is now in its final stages i take it
if now its compression setup this should be good.

putting the finishing touches to my alterations of Qoole, had to ripp out some guts to add Quad and Tri Patch support. (been a true nightmare as Qoole due to its completely messy setup)
Added Direct3D Support... lol which was another nightmare

gonna release just after christmas 2nd January

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 14th Dec 2002 13:18 Edited at: 26th Mar 2011 23:45
Again that depends on what format your talking about ?? The VWMap format will always evolve. So added Types are allowed under Version 1.0. Your editor only needs to export a VWmap to represents it's worlds..

If the region types change totally in the future, this will be covered under a different VWMap version.. I.e. geometry construction through planes, or whatever other ideas i dream up.. got a list a mile long now..

The binary format is still changing. Supporting it from a DB app, is as easy as including the replay library. Failing that, you'd have to port the library to whatever target language you have in mind.. I.e. Porting to C + some 3D engine should be trivial, providing rotation/scaling match the DB system. Otherwise you'd have to translate them, ie.. pre-VWmap export then post binary import..

Shadow Robert
22
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 14th Dec 2002 15:49
lol yeah i know the feelin' with ideas
well as format is now an "as is" state then I guess really just tweak the compatibility and its all ready.

I'll have to really show what has been finish i think, gonna need to look over the actual format again cause i've forgotten alot whilst trying to solve the 3D Math in Qoole, kinda figured out why the booleans gave so many leaks ... i know it doesn't matter as much for your format - but still who wants ugly leaks on thier worlds

finally got the patch mesh working well too - setup a spline routine instead of calculating the points in sequence, allows for much better setup and normalising
now all the user has to do is click on the spline points, instead of of the vertex (^_^)

i think all i've really got to start now is the entity set, which actually i'll probably send you guys the scripting to so you can develop your own *.ent set

Anata aru kowagaru no watashi!
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 9th Jan 2003 03:46 Edited at: 26th Mar 2011 23:47
Visible Worlds V1.20 Released
======================


This release see's the compiler and product turning into a powerful mature tool. I've invested a lot of work on core compilers functionality, it's speed and the overall application stability.

Those who entering our Visible Worlds competition, should not hesitate upgrading to this version. It features many compiler fixes over V1.05 and is generally a lot more user friendly.


Visible Worlds Home Page

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 14th Jan 2003 01:19 Edited at: 26th Mar 2011 23:47
Visible Worlds V1.25 - Parent Regions
===========================

A while back "Empty" came up with a very cool idea for another feature Visible Worlds. The concept was a region that acts as container, a parent. These regions could be wrapped around sets of objects/box into smaller groups. The interesting thing is you can set the regions camera clipping depth, independent of the Vis camera's clipping depth.

These regions act as triggers and place some of run time responsibility back on your shoulders. The idea being that when a parent region is in view and beyond it's it's defined clipping distance, the Vis returns you with some information that you can act upon. While it falls inside it's camera distance it passes it's child object through the vis calculation process.

It might not sound too useful on the surface, but it'll allow us to get the impression of even higher details more complex worlds, without any real run time calculations.

Imagine this. If your building a city with lots of large buildings, and each building has and interior full of objects. To make the city look large we set the camera depth to say16,000. So we can see a lot of buildings in any scene at once. Now normally, if these buildings have any open windows / doors then Vis Worlds visibility rays will see inside/through these openings and build lists of all of the objects visible, regardless of how far away from the camera they are.

But, do we really need to even bother drawing the visible interiors of building that are way off in the distance ??.. Not really.. and hence Parent Regions..

If we wrap up the interior objects of each building within parent regions, and set their visible camera range to say %35 or %40 of the overall view depth. That means that it'll only bother calc'ing vis on the building interiors when the parent regions are close enough, and thus are likely to make some visual impact / importance to a scene. For those regions that fall outside (too far way), the user will be returned a list of these regions. You can then use a black plane (pre-positioned) to block out the windows say, or whatever takes your fancy... or just do nothing..


I had always wanted to support LIGHTS & Sounds, pretty much since the idea for his first started to evolve.. While were still working out the details on their implementation. These systems are less specific Less native DB and more generic. In the case of lighting for example, the compiler like just have very basic lighting understanding. You'll be expect to actually turn the lights on that the vis returns..

The best thing about lighting is that we can actually toggle the lights that effect the scene, rather than picking ones that are within range..

With any luck, we'll get the newer version out in a few days..

So anybody, making any progress on a compo entry ?

Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 14th Jan 2003 01:20
Visible Worlds V1.25b - Parent Regions (cont.)
===========================

Well, this has all gone together fairly easily. Parent regions are now parsed, and totally spliced through the compiler. With even some visual support thrown into Uw3D so we can see them before and after compile time..

What's missing now is the DB replay library support and sadly the DOC's for these new regions. It's often harder/more time consuming writing the doc's than the actual code.. So another release is almost ready, but it's steadily moving forward and working !.

l8r,
Kevin Picone
[url]www.underwaredesign.com[/url]

Login to post a reply

Server time is: 2024-11-21 12:04:14
Your offset time is: 2024-11-21 12:04:14