GameMonkey Script

GameMonkey Script Forums
It is currently Thu May 23, 2019 3:47 am

All times are UTC




Post new topic This topic is locked, you cannot edit posts or make further replies.  [ 23 posts ]  Go to page Previous  1, 2
Author Message
PostPosted: Sun Dec 18, 2011 5:32 am 
Offline

Joined: Mon Dec 15, 2003 1:38 pm
Posts: 708
Just thought I'd note that I'm no longer actively involved in the Unlimited Detail project. I was involved earlier on, working toward commercialization of the technology. I think there is interesting potential for volume style 3D models in real-time graphics. I look forward to seeing what the talented guys at Euclideon produce.


Top
 Profile  
 
PostPosted: Fri Jan 27, 2012 3:16 pm 
Offline

Joined: Fri Jan 27, 2012 2:37 pm
Posts: 2
Dear Mr. Douglas,

Is the traversal related to the idea of a top-down/near-far hierarchical 3-rasterization of the view pyramid (subdivide if the extremal lines are not in the same block; paint the view plane quad corresponding to the sub-pyramid if its extremal lines are both in the same non empty block; the farther the coarser the blocks) in object-space octree style structures?

Top-down because otherwise (bottom-up) one cannot say that "the system isn’t ray tracing at all or anything like ray tracing.": multiresolution 3-Bresenham (unless the index is perverted).

Is animation achieved by e.g., moving or rotating the camera in the various object spaces (i.e., not the points)?

Is the search abridged by rotating the camera around the spaces' centers without varying its distances to them, launching the search and then scaling the results? This reduces the number of jumps.

Does the elimination of holes/noise in the produced images reflect badly on performance?

Thank you.


Top
 Profile  
 
PostPosted: Sun Jan 29, 2012 11:58 am 
Offline

Joined: Mon Dec 15, 2003 1:38 pm
Posts: 708
Hi Stern,

I can't discuss implementation or performance details. Euclideon will publicize information as they see fit.
I can clarify a couple quotes you mention from old youtube videos...
Quote:
Top-down because otherwise (bottom-up) one cannot say that "the system isn’t ray tracing at all or anything like ray tracing.": multiresolution 3-Bresenham (unless the index is perverted).

The quote simply meant that the method did not contain any mathematical or structural concepts of a ray (or line segment), hence no ray tracing or ray casting.
Quote:
Is animation achieved by e.g., moving or rotating the camera in the various object spaces (i.e., not the points)?

Don't read anything into this, it was just a verbal description of standard 3D rotation / transformation. In 3D, everything is relative, so it doesn't matter if the camera was rotated or a rigid object in the scene was rotated, the results are the same.

Sorry I can't discuss further. Though I am no longer involved in the project, I have the usual contractual and ethical obligation to respect Euclideon's IP and can't provide any insider perspective or technical details.


Top
 Profile  
 
PostPosted: Sun Jan 29, 2012 2:27 pm 
Offline

Joined: Fri Jan 27, 2012 2:37 pm
Posts: 2
Thanks for the reply!


Top
 Profile  
 
PostPosted: Thu Sep 06, 2012 4:22 pm 
Offline

Joined: Sat Sep 01, 2012 3:12 am
Posts: 12
I know I'm a little late to the thread, but I wanted to put my few cents-worth in.

The technology for "unlimited detail" isn't new at all, but it's using a technique called voxel rendering. Although this demo looks impressive, it's actually demonstrating the limitations that voxels have, and how to overcome them, ideas that have been pushed around for a few years now. Rendering multiple instances of the same voxel-model takes very few resources because it is simple to render it once, and copy it multiple times (single-instance rendering).

Is Bruce Dell a fraud? Well, yes and no. The technology he presents is interesting, but it currently isn't feasible on larger scales beyond single-instance rendering with our current hardware.

The main work-around is handling voxels in the background, and converting them to polygons for display; when a voxel is changed in some way, the voxel is recalculated and then converting into a new polygon and replaced in the render.

Dealing with the concept of infinite detail is interesting, though. Dell's approach isn't new, but it hasn't been something that has been really worked with other than small demos, and presenting it to be used in a larger framework/engine is interesting. The tech involved isn't that trivial at all, though - it is simply a matter of determining if an object is close enough to begin rendering it as a voxel rather than a polygon - the same concepts are used in modern games to determine the level of detail on textures of various sizes and distances.

So the technology itself is interesting, but not new, and not invented by Dell or his programming team.

-MrBarry


Top
 Profile  
 
PostPosted: Wed Oct 31, 2012 11:33 pm 
Offline

Joined: Wed Oct 31, 2012 11:22 pm
Posts: 1
An early version of the method (found on a forum)?:
Code:
/* Here we quadrisect the frustum across x & y (no bisection across z) */
bucket_sort(frustum, square, list)
{
    if (unit square) {  /* frustum corresponds to a pixel */
        cube = pop_front(list)  /* pick a front cube */
        square.color = cube.color
    } else {
        do {
            cube = pop_front(list)
            if (cube in frustum[XY] for some XY in { LU, RU, LD, RD })  /* frustum[XY] is the XY quadrant of frustum */
                push_back(cube, list[XY])   /* list[XY] is a list of cubes that are in the XY subfrustum */
            else    /* the current cube spans subfrusta: push_front its (non-empty) children on list, in back-to-front order so that the frontmost are firsts */
                for (XYZ in back_to_front)  /* back_to_front depends on where the eye is with respect to cube's halfway planes (predetermined list) */
                    push_front(cube[XYZ], list) /* cube[XYZ] is the XYZ (non-empty) octant of cube */
        } while (list)
        for (XY in { LU, RU, LD, RD })  /* LU: left-up quadrant, RU: right-up quadrant etc. */
            if (list[XY])   /* if there are cubes in the XY subfrustum */
                bucket_sort(frustum[XY], square[XY], list[XY])
    }
}


Top
 Profile  
 
PostPosted: Sun Nov 11, 2012 8:18 am 
Offline

Joined: Mon Dec 15, 2003 1:38 pm
Posts: 708
Horrigan wrote:
An early version of the method (found on a forum)?:

It's unrelated.


Top
 Profile  
 
PostPosted: Tue Feb 19, 2013 3:23 am 
Offline

Joined: Mon Dec 15, 2003 1:38 pm
Posts: 708
I'll share a few thoughts in closing, then close this thread...

I still frequently receive messages and emails relating to Unlimited Detail base on this posting. Being passionate about compute graphics and algorithms myself, I can understand the desire to discuss these things, to learn more and make improvements.

I simply can't and won't discuss anything related to Unlimited Detail. Any knowledge of algorithms, business dealings and future plans belong to Euclideon.

Perhaps some years in the future I will be at liberty to share some reflective memories or discuss published algorithms, but until that time only my apologetic silence will be heard.

For people interested in voxel and volume rendering, I suggest looking at the current and historic research on the topic. There are many exciting resources and research projects demonstrating performance, fine detail and image quality with volume style rendering.

I'll leave this thread here indefinitely. Please don't read too much into it and analyze each word, it's simply thoughts expressed at different moments in time by myself and other people.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic This topic is locked, you cannot edit posts or make further replies.  [ 23 posts ]  Go to page Previous  1, 2

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group