Skip to content

Commit 206572a

Browse files
authored
Merge branch 'OGRECave:master' into RenderingThread
2 parents 265f125 + d9c0da7 commit 206572a

16 files changed

+355
-340
lines changed

.github/workflows/pip-build.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,16 @@ jobs:
4141
shell: bash
4242
- name: Install Dependencies
4343
run: |
44-
curl -LO https://sdk.lunarg.com/sdk/download/1.3.224.1/windows/VulkanSDK-1.3.224.1-Installer.exe
45-
.\VulkanSDK-1.3.224.1-Installer.exe --accept-licenses --default-answer --confirm-command install
44+
curl -LO https://sdk.lunarg.com/sdk/download/1.3.275.0/windows/VulkanSDK-1.3.275.0-Installer.exe
45+
.\VulkanSDK-1.3.275.0-Installer.exe --accept-licenses --default-answer --confirm-command install
4646
- name: Build
4747
run: |
4848
python -m pip install --upgrade pip==24.0
4949
pip install setuptools wheel twine
5050
pip wheel . --verbose
5151
python -m twine upload --repository pypi *.whl
5252
env:
53-
VULKAN_SDK: C:\VulkanSDK\1.3.224.1
53+
VULKAN_SDK: C:\VulkanSDK\1.3.275.0
5454
SKBUILD_BUILD_OPTIONS: -j4
5555
macos:
5656
runs-on: macos-12

BuildingOgre.md

+19-12
Original file line numberDiff line numberDiff line change
@@ -77,20 +77,27 @@ The optional dependencies will enable input handling and allow building the docu
7777
* SDL: https://www.libsdl.org/
7878
* zlib: http://www.zlib.net
7979
* freetype: http://www.freetype.org
80+
* googletest: https://github.com/google/googletest
8081

8182
### Optional dependencies
8283

8384
* DirectX SDK: http://msdn.microsoft.com/en-us/directx/
8485
* Vulkan SDK: https://vulkan.lunarg.com/
85-
* FreeImage: http://freeimage.sourceforge.net
8686
* Doxygen: http://doxygen.org
87-
* Cg: http://developer.nvidia.com/object/cg_toolkit.html
8887
* Remotery: https://github.com/Celtoys/Remotery
8988
* SWIG: http://www.swig.org/
9089
* %Assimp: https://www.assimp.org/
9190
* Wayland: https://wayland.freedesktop.org/
91+
* Rust: https://www.rust-lang.org/
92+
* Bullet: https://pybullet.org/wordpress/
93+
94+
### Deprecated dependencies
95+
96+
* FreeImage: http://freeimage.sourceforge.net
97+
* Cg: http://developer.nvidia.com/object/cg_toolkit.html
98+
* OpenEXR: http://www.openexr.com
9299

93-
Running CMake
100+
Running CMake {#running-cmake}
94101
-------------
95102

96103
Now start the program cmake-gui by either typing the name in a console
@@ -147,7 +154,7 @@ This will freshly generate the API documentation for Ogre's classes from the hea
147154
make OgreDoc
148155

149156

150-
Installing
157+
Installing {#installing-sdk}
151158
----------
152159

153160
Once the build is complete, the libraries and headers must be copied to a clean location.
@@ -177,8 +184,8 @@ The ogre port in vcpkg is kept up to date by Microsoft team members and communit
177184

178185
# Cross-Compiling
179186

180-
Building on Ubuntu for Android
181-
--------------------------------------------
187+
Android
188+
-------
182189

183190
To build Ogre for Android, you need to specify the android cross toolchain to cmake as
184191

@@ -190,8 +197,8 @@ You can now import these projects in Android Studio or manually trigger the APK
190197

191198
gradle assembleRelease
192199

193-
Building for WebAssembly (using Emscripten)
194-
-----------------------------------------
200+
WebAssembly / Emscripten
201+
------------------------
195202
Install the Emscripten SDK (see full documentation on [www.emscripten.org](https://emscripten.org/docs/getting_started/downloads.html)), and make sure
196203
that the environment variables are correctly set (eg. run `source <emsdk_path>/emsdk_env.sh` before attempting to build)
197204

@@ -207,8 +214,8 @@ This will not build the full SampleBrowser, but just a minimal Sample. The resul
207214

208215
To prevent any cross-origin issues, start a local webserver as `python3 -m http.server 8000` and visit http://localhost:8000.
209216

210-
Building on Mac OS X for iOS OS
211-
-------------------------------
217+
iOS OS
218+
------
212219

213220
To build Ogre for iOS, you need to specify the ios cross toolchain to cmake as
214221

@@ -233,8 +240,8 @@ the Info.plist file to match the App ID of the chosen code signing identity.
233240
This can be done from the Target Properties panel. It must match the bundle
234241
identifier of a valid developer certificate if you are building for devices.
235242

236-
Building as Windows Store or Windows Phone application
237-
-------------------------------------------------------------------
243+
WinRT / UWP
244+
------------------------------
238245

239246
You need Windows 8.0 or later, Windows 10 is recommended.
240247

CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ if (APPLE AND NOT ANDROID AND NOT EMSCRIPTEN AND NOT ANDROID_PLATFORM)
6363
add_definitions(-D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES=0)
6464
endif ()
6565

66-
project(OGRE VERSION 14.3.0)
66+
project(OGRE VERSION 14.3.1)
6767

6868
# extra version info
6969
set(OGRE_VERSION_SUFFIX "")

Docs/src/high-level-programs.md

+10-10
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ The available varyings are:
227227
The following features are only available when using the legacy OpenGL profile. Notably they are not available with GL3+ or GLES2.
228228
229229
### OpenGL state
230-
GLSL can access most of the GL states directly so you do not need to pass these states through [param\_named\_auto](#param_005fnamed_005fauto) in the material script. This includes lights, material state, and all the matrices used in the openGL state i.e. model view matrix, worldview projection matrix etc.
230+
GLSL can access most of the GL states directly so you do not need to pass these states through [param_named_auto](#param_005fnamed_005fauto) in the material script. This includes lights, material state, and all the matrices used in the openGL state i.e. model view matrix, worldview projection matrix etc.
231231
232232
### Built-in attributes
233233
GLSL natively supports automatic binding of the most common incoming per-vertex attributes (e.g. `gl_Vertex`, `gl_Normal`, `gl_MultiTexCoord0` etc)
@@ -557,11 +557,11 @@ At runtime, when myVertexProgram or myFragmentProgram are used, OGRE automatical
557557

558558
Parameters can be specified using one of 4 commands as shown below. The same syntax is used whether you are defining a parameter just for this particular use of the program, or when specifying the @ref Default-Program-Parameters. Parameters set in the specific use of the program override the defaults.
559559

560-
- [param\_indexed](#param_005findexed)
561-
- [param\_indexed\_auto](#param_005findexed_005fauto)
562-
- [param\_named](#param_005fnamed)
563-
- [param\_named\_auto](#param_005fnamed_005fauto)
564-
- [shared\_params\_ref](#shared_005fparams_005fref)
560+
- [param_indexed](#param_005findexed)
561+
- [param_indexed_auto](#param_005findexed_005fauto)
562+
- [param_named](#param_005fnamed)
563+
- [param_named_auto](#param_005fnamed_005fauto)
564+
- [shared_params_ref](#shared_005fparams_005fref)
565565

566566
<a name="param_005findexed"></a><a name="param_005findexed-1"></a>
567567

@@ -595,7 +595,7 @@ Format: param\_indexed\_auto &lt;index&gt; &lt;autoConstType&gt; &lt;extraInfo&g
595595
Example: param\_indexed\_auto 0 worldviewproj\_matrix
596596

597597
@param index
598-
has the same meaning as [param\_indexed](#param_005findexed); note this time you do not have to specify the size of the parameter because the engine knows this already. In the example, the world/view/projection matrix is being used so this is implicitly a matrix4x4.
598+
has the same meaning as [param_indexed](#param_005findexed); note this time you do not have to specify the size of the parameter because the engine knows this already. In the example, the world/view/projection matrix is being used so this is implicitly a matrix4x4.
599599

600600
@param autoConstType, extraInfo
601601
is one of Ogre::GpuProgramParameters::AutoConstantType without the `ACT_` prefix. E.g. `ACT_WORLD_MATRIX` becomes `world_matrix`.
@@ -623,7 +623,7 @@ Format: param\_named\_auto &lt;name&gt; &lt;autoConstType&gt; &lt;extraInfo&gt;
623623
@par
624624
Example: param\_named\_auto worldViewProj worldviewproj\_matrix
625625

626-
The allowed @c autoConstType and the meaning of @c extraInfo are detailed in [param\_indexed\_auto](#param_005findexed_005fauto).
626+
The allowed @c autoConstType and the meaning of @c extraInfo are detailed in [param_indexed_auto](#param_005findexed_005fauto).
627627

628628
<a name="shared_005fparams_005fref"></a><a name="shared_005fparams_005fref-1"></a>
629629

@@ -649,7 +649,7 @@ shared_params YourSharedParamsName
649649
}
650650
```
651651

652-
As you can see, you need to use the keyword ’shared\_params’ and follow it with the name that you will use to identify these shared parameters. Inside the curly braces, you can define one parameter per line, in a way which is very similar to the [param\_named](#param_005fnamed) syntax. The definition of these lines is:
652+
As you can see, you need to use the keyword ’shared\_params’ and follow it with the name that you will use to identify these shared parameters. Inside the curly braces, you can define one parameter per line, in a way which is very similar to the [param_named](#param_005fnamed) syntax. The definition of these lines is:
653653
@par
654654
Format: shared\_param\_named &lt;param\_name&gt; &lt;param\_type&gt; \[&lt;\[array\_size\]&gt;\] \[&lt;initial\_values&gt;\]
655655

@@ -658,7 +658,7 @@ Format: shared\_param\_named &lt;param\_name&gt; &lt;param\_type&gt; \[&lt;\[arr
658658
@param array_size allows you to define arrays of param\_type should you wish, and if present must be a number enclosed in square brackets (and note, must be separated from the param\_type with whitespace).
659659
@param initial_values If you wish, you can also initialise the parameters by providing a list of values.
660660

661-
Once you have defined the shared parameters, you can reference them inside default\_params and params blocks using [shared\_params\_ref](#shared_005fparams_005fref). You can also obtain a reference to them in your code via Ogre::GpuProgramManager::getSharedParameters, and update the values for all instances using them.
661+
Once you have defined the shared parameters, you can reference them inside default\_params and params blocks using [shared_params_ref](#shared_005fparams_005fref). You can also obtain a reference to them in your code via Ogre::GpuProgramManager::getSharedParameters, and update the values for all instances using them.
662662

663663
## Hardware Support
664664

Docs/src/manual.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -391,7 +391,7 @@ mSceneMgr->setShadowTechnique(SHADOWTYPE_STENCIL_ADDITIVE);
391391
2. Create one or more lights. Note that not all light types are necessarily supported by all shadow techniques, you should check the sections about each technique to check. Note that if certain lights should not cast shadows, you can turn that off by calling setCastShadows(false) on the light, the default is true.
392392
3. Disable shadow casting on objects which should not cast shadows. Call setCastShadows(false) on objects you don’t want to cast shadows, the default for all objects is to cast shadows.
393393
4. Configure shadow far distance. You can limit the distance at which shadows are considered for performance reasons, by calling Ogre::SceneManager::setShadowFarDistance.
394-
5. Turn off the receipt of shadows on materials that should not receive them. You can turn off the receipt of shadows (note, not the casting of shadows - that is done per-object) by calling Material::setReceiveShadows or using the receive\_shadows material attribute. This is useful for materials which should be considered self-illuminated for example. Note that transparent materials are typically excluded from receiving and casting shadows, although see the [transparency\_casts\_shadows](#transparency_005fcasts_005fshadows) option for exceptions.
394+
5. Turn off the receipt of shadows on materials that should not receive them. You can turn off the receipt of shadows (note, not the casting of shadows - that is done per-object) by calling Material::setReceiveShadows or using the receive\_shadows material attribute. This is useful for materials which should be considered self-illuminated for example. Note that transparent materials are typically excluded from receiving and casting shadows, although see the [transparency_casts_shadows](#transparency_005fcasts_005fshadows) option for exceptions.
395395
396396
# Opting out of shadows {#Opting-out-of-shadows}
397397

0 commit comments

Comments
 (0)