|
Post by kulu on Sept 15, 2016 8:35:26 GMT
Hi I found this while browsing the net a couple of months back, so I thought I would share this document. docs.unity3d.com/Manual/OptimizingGraphicsPerformance.htmlit is very helpful , even though it for Unity Engine. this site helped me find out that multiple lights in a scene can cause lag ( for example ). this also lead me to think of 3d engines being able to share similar functions and features, instead of them being isolated products that share no common aspects or features. It also made me think of 3d rad being similar to unity in some aspects , thats why Im sharing this doc with all of you.
|
|
|
Post by TinSoldier on Sept 15, 2016 16:59:45 GMT
heres an idea, i saw this technique in cyber strike2 ( a PC and online mech warrior game, which is still online now but free). the idea is to add as many lights as you need to the project (within limits of course, this is 3drad) but only start/stop show/hide so many lights at a time (for 3drad that's 3) and only the 3 lights that are in view of the camera at any given time. So if not on camera, turn them off / hide them. I cant say this will actually work or not, haven't tried it, but just mentioning what a professional engine was doing more then 10 years ago, and the game is still online today. ( all though not used much i don't think anymore). two script commands are available to do this - bool i3DPointVisible(OBJ_X,Vector3); Return TRUE if the specified 3d point is within the specified camera window. OBJ_X = camera object Vector3 = 3d point location
bool iSphereVisible(OBJ_X,Vector3,float); Return TRUE if the specified sphere is within the specified camera window. OBJ_X = camera object Vector3 = sphere center location float = radius NOTE: see SkinMeshImpostersVisible demo project for an example of usage. I wouldn't be surprised though if 3drad throws a screw into the process so it should help, but ends up not doing so. Needs to be tried !.
|
|
|
Post by indiedev on Sept 16, 2016 9:51:10 GMT
the idea is to add as many lights as you need to the project (within limits of course, this is 3drad) but only start/stop show/hide so many lights at a time (for 3drad that's 3) and only the 3 lights that are in view of the camera at any given time. So if not on camera, turn them off / hide them. correction: rad can use 4 lights per skinmesh [less is best] so actually you can have say 40 small lights split over 10 meshes [but will lag] also if you put say 100 lights on 1 road mesh, rad is supposed to only render 4 at a time as you drive down it, so likely it will auto hide the 96 furthest from player/cam .
|
|