I remember I read it on one topic (can't remember which one) that dark_sylinc once said (if I remember correctly) the porting from Ogre 1.x (DirectX 9) to Ogre 2.1 (DirectX 11) may not improve performance because the Game still renders in DirectX 9 way. I'm confused about render DirectX 9 & DirectX 11 way. I used to think all these render way may hidden under the Graphic Engine and client code won't aware of this.
Please explain for me about this. Thanks.
What is using Ogre 2.1 (DirectX 11) in DirectX 9 Way?
-
- Gremlin
- Posts: 152
- Joined: Sat Aug 12, 2017 4:16 pm
- x 4
- dark_sylinc
- OGRE Team Member
- Posts: 5296
- Joined: Sat Jul 21, 2007 4:55 pm
- Location: Buenos Aires, Argentina
- x 1278
- Contact:
Re: What is using Ogre 2.1 (DirectX 11) in DirectX 9 Way?
Errr, I think it's being twisted. But without the actual post it's hard to explain.
I probably would have said that an engine that is just ported from DX9 to DX11 won't magically get better performance. Using DX11 API in a DX9-style for engines results in poor performance.
However Ogre 2.1 was a major rewrite of the rendering code, and thus Ogre 2.1 renders in "DX11-style" while using DX11. There is little or nothing left that works in a DX9-way in Ogre 2.1; and Ogre 2.1 indeed hides these details from you so you don't have to care about that.
A few games in Ogre 1.x abused the listeners Ogre provided, and thus tried to do a lot of rendering by themselves, by passing Ogre. Those games would have a harder time porting to 2.1. But certainly a non-issue if you're beginning from scratch.
Without the actual post, I cannot further clarify.
I probably would have said that an engine that is just ported from DX9 to DX11 won't magically get better performance. Using DX11 API in a DX9-style for engines results in poor performance.
However Ogre 2.1 was a major rewrite of the rendering code, and thus Ogre 2.1 renders in "DX11-style" while using DX11. There is little or nothing left that works in a DX9-way in Ogre 2.1; and Ogre 2.1 indeed hides these details from you so you don't have to care about that.
A few games in Ogre 1.x abused the listeners Ogre provided, and thus tried to do a lot of rendering by themselves, by passing Ogre. Those games would have a harder time porting to 2.1. But certainly a non-issue if you're beginning from scratch.
Without the actual post, I cannot further clarify.