MWRender Refactoring
Re: MWRender Refactoring
Since you guys are going to be working with the sky system anyways, do you think you could turn it off for interior cells?
Re: MWRender Refactoring
Well, since we haven't even yet decided if we keep or replace Caelum there is little point in doing any more work with it.
But if someone wants to add interior sky handling, I am okay with it. Would only require a minor adjustment in MWWorld::World and the actual implementation of enabling/disabling the sky in the render system.
But if someone wants to add interior sky handling, I am okay with it. Would only require a minor adjustment in MWWorld::World and the actual implementation of enabling/disabling the sky in the render system.
Re: MWRender Refactoring
Any news on this?
Re: MWRender Refactoring
Not that I know of. At least nothing on github. IIRC swick was away last week, so new commits will probably come in this week.
Re: MWRender Refactoring
Week is almost over. Any progress?
Re: MWRender Refactoring
nope but i have at least time today and tomorrow. To be honest, everytime when I try to go on I am confused:
MWRender::Objects etc are subclasses of MWRender::RenderingInterface which replaces CellRenderImp. I thought the MWScene can insert a cell, so why do all Objects, Actors etc need to insert a cell?!
When MWWorld::Class has not insertObj but insertObjectPhysic, insertObjectMechanics and insertObjectRender I have to change all MWClass'es
MWRender::Objects etc are subclasses of MWRender::RenderingInterface which replaces CellRenderImp. I thought the MWScene can insert a cell, so why do all Objects, Actors etc need to insert a cell?!
When MWWorld::Class has not insertObj but insertObjectPhysic, insertObjectMechanics and insertObjectRender I have to change all MWClass'es
Re: MWRender Refactoring
MWScene is going to be removed.MWRender::Objects etc are subclasses of MWRender::RenderingInterface which replaces CellRenderImp. I thought the MWScene can insert a cell, so why do all Objects, Actors etc need to insert a cell?!
"insert a cell" here means inserting all references in a cell. Was meant as an efficiency optimisation. We can probably skip it for now.
Re: MWRender Refactoring
I meant MWWorld::Scene, not MWRender::Scene
edit: MWWorld::Scene::loadCell calls CellRenderImp::insertCell and it will insert all kinds of objects (objects, npcs, players etc) so why does each of these objects need to be a sublclass of CellRenderImp?!
edit: MWWorld::Scene::loadCell calls CellRenderImp::insertCell and it will insert all kinds of objects (objects, npcs, players etc) so why does each of these objects need to be a sublclass of CellRenderImp?!
Re: MWRender Refactoring
Okay. Yes, MWWorld::Scene is supposed to insert a cell into the scene. It does this via the individual RenderingInterface sub-classes. A possible optimisation (along the line of what we are currently doing) is to iterate over the per-record-type reference lists in the lowest part of the architecture (the RenderingInterface sub-classes). But as I wrote above, maybe we should skip this part for now and just let the sub-classes insert individual references. We can still optimise it later, if we see it is too slow.
Re: MWRender Refactoring
What exactly should go into RenderingInterface?