Skip to content

Commit

Permalink
update 1.11 Notes
Browse files Browse the repository at this point in the history
  • Loading branch information
paroj committed Apr 25, 2018
1 parent 7f22938 commit 2cacfd7
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions Docs/1.11-Notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ Ogre now requires a C++11 conforming compiler (at least gcc 4.8 or VS2013). Furt
- scale related functions moved from `Matrix4` to `Matrix3`: porting `.hasScale()` → `.linear().hasScale()`
- similarly `transformDirectionAffine` is now done by extracting the linear part via `linear()` and using `operator*` of `Matrix3`, that has now improved performance.

* `TextureUnit` no longer caches any `Texture` state. All texture related calls now forward to the assigned Texture. If there is no Texture assigned, calls to e.g. `TextureUnitState::setNumMipmaps` have no effect.

* Textures must not be declared in an Ogre Script *and* be manually created. Ogre now immediately creates all Textures declared in scripts (in unloaded state). Previously it was possible to declare a texture name in the Material and create a manual texture before the material was fully loaded. This is not possible any more.
If you were relying on the old behaviour, you now must explicitly set you manual texture via `->getTextureUnitState(..)->setTexture(manualTex)`.

* `TextureUnit` no longer caches any `Texture` state. If there is no Texture assigned, calls to e.g. `TextureUnitState::setNumMipmaps` are without effect.

* Reduced Memory consumption of core classes
- by reducing padding and using bitfields for boolean flags, the memory consumption of e.g. `Pass` could be reduced by 11%.
- see https://github.com/OGRECave/ogre/pull/665 for numbers of other classes
Expand All @@ -39,6 +39,8 @@ If you were relying on the old behaviour, you now must explicitly set you manual

* Generic Image codecs (STB Image, FreeImage) are now plugins. For distribution you should use compressed textures (e.g. DDS) with precomputed mipmaps. Having the generic codecs as plugins allows you to easily disable them. Editing software on the other hand can now easily swap in a custom implementation (like QImage).

* `Image::flipAroundX/Y` now operate in-place instead of allocating temporary memory.

* Mesh: does not use CPU shadow buffers by default any more. If you were relying on fast read access, you will have to explicitly request shadow buffers. Everybody else just saves memory now.

* `PF_DEPTH` now correctly works with `TU_RENDERTARGET`. This will create a depth-only FBO and give you the raw depth values, without needing any special shaders.
Expand Down Expand Up @@ -69,6 +71,7 @@ All platform headers were hidden and are now only available for internal usage.
- `iOSDocumentsDirectory()` -> `getWritablePath`
- `macBundlePath()` -> `resolveBundlePath`
* drop Google NaCl platform support. [See the official migration guide](https://developer.chrome.com/native-client/migration)
* Restore MinGW (mingw-w64) support, including D3D9 RenderSystem

## Overlay
Overlay scripts now support the standard ogrescript syntax and the `template` keyword is now optional.
Expand Down

0 comments on commit 2cacfd7

Please sign in to comment.