3D Portal Rendering
Thursday, March 18, 20103D Portal Rendering
I have now finished my project and a demo program can be found here
I’m currenty working on my “how to” document that hopefully will help you understand and even lern to implement something similar to this yourself.
Friday, March 05, 20103D Portal Rendering
I’ve now finally been able to get vectors out of my viewport so that i can cull correctly from the start, the idea is to start out with 4 clipplanes from my camera view and then merge them through each portal i go through. so that i build a more and more exact and complex clipview into the comming section. next week i will finish the portal clipping algorithm so that i hopefully will have time to try out things like mirrors and portals with transformations.
Tuesday, March 02, 20103D Portal Rendering
I’ve finnaly made everything work more or less in the portalrendering system. It now works like this: I start in the sector where my camera is, then i do a cull-check to remove objects in the sector which i can’t se. Then i cull-check the portals connected to the sector, and then recursivly render each sector and cull the objects in them with planes I’ve created with my camera pos and the vertex positions of the current portal. In the above picture you can see to the left is normal nebula rendering, whilst on the right picture, i have created a sector around each humanmesh, and i have connected a simple portal between the first and the second one, and it renders both! It’s not perfect yet, the things I’ve found so far that is wrong is that if the bounding box of the object i am culling is so big that none of the corners of the bounding box is visible through the portal, it wont render. and something is wrong with the lighting of the objects.(left picture they have blue light aswell as white).
Sunday, February 21, 20103D Portal Rendering
This week i have finished all the classes i think i am going to need for the portal system, and i have made the connection through my portal view so i’m really close to rendering correct! Just got one problem now with my InternalPortalServer (graphics thread) dying when i want to get my sectors out of it, so that is the first thing i’m going to fix on monday. So next blogpost will probably contain a picture with my system hopefully doing what it should!
Sunday, February 14, 20103D Portal Rendering
Things have changed quite a bit since last week in terms of the loading of levels in the portal system. My first idea on the level loader was to structure everything up directly in maya with sections and portals structured in folders, so i then in nebula hack up the big levelscene and create the portals and sections from that. That wasn’t as easy as i had hoped! The Nebula 3 Engine is quite different from the previous version 2 and that has taken alot of extra time, things i thought would be peice of cake acually took alot of energy.
So i’ve decided to go with some kind of script that reads in objects, sections and portals separatly. The best way would be to be able to generate this script directly from maya so i’m thinking about lerning som MEL-scripting later in the project. But now i focus on the structure in my project and make everything work there before i start thinking about loading anything.
I’ve created a portal server singleton that will manage all of the sections and sections in turn will manage the objects as well as the portals.
I think i have gotten over the biggest humps now in terms of nebula 3 and belive that implementation of the system now can start for real.
Monday, February 08, 20103D Portal Rendering
This week some subclasses of the nebula 3 render system has been created to further create access to the rendering pipeline.
It is now possible to see through a different camera than the one doing the culling of objects, so that it will be much easier to debug the project and see if it does what it is suppose to do!
There has been almost no changes to the original code of the nebula 3 except for som minor changes like making a variable protected instead of private, and some functions virtual.
The comming week, a test-level will be created in maya aswell as a level loader in the project. Hopefully a prototype of the project will be complete to the second milestone that shows the portal rendering technique.
Monday, February 01, 20103D Portal Rendering
This week have been all about understanding the nebula 3 render system so that implementation of the portal system can be started. Different tests have been made to see what can be used from the nebula engine and what things that has to be created.
Sunday, January 24, 20103D Portal Rendering
The first week of the project has ended and work has started on learning the new nebula 3 Device aswell as some research on the area of portal rendering.
The first version of the project plan has also been created and can be found here
In the comming week, the research on Nebula 3 and portals will continue as well as a sketchup of the portal-algorithm that will be created.