[转]Clone Object as instance in OgreMax

本文转自: http://www.dinohensen.nl/3d-modelling/clone-object-as-instance/

 

Autodesk 3DS Max + OgreMax exporter

 

The goal of this tutorial is to create instances of objects instead of copies to improve loading time in games developed using the Ogre3D Graphics Engine in combination with a so-called DotSceneLoader. A DotSceneLoader is a library that loads a ‘.scene’ file generated by OgreMax exporter. OgreMax exporter is used to export 3D scene’s created in Autodesk 3DS Max. The problem is that sometimes when you want a lot of same objects in your scene, you have to clone those objects, seems obvious…… But when you haven’t found out all tips and tricks about the settings that are available in OgreMax and AutoDesk 3DS Max, then you are left with only two options:

  1. Learn how to use 3DS Max and OgreMax exporter
  2. Follow this tutorial

 

The first option is very time consuming. By the time you even found some tutorials/books about this, you allready forgot what you were looking for! So I suggest you follow this tutorial!

When using the standard clone defaults, an object cloned will actually be copied. When exporting the scene as a .scene file, an object copied a hundred times, will generate hundred meshes. These meshes will all be the same, but only have a differente name. When loading a game, all of these meshes still have to be loaded even though they are all the same meshes. For example: you have an object called sphere. When you copy it a hundred times the meshes generated will look like this:

sphere01.mesh
sphere02.mesh
sphere03.mesh
…………………
…………………
sphere100.mesh

It makes no sense loading the same mesh a hundred times, so follow these steps to avoid this:

 

Preparations: Goto: OgreMax -> SceneSettings -> Meshes(Tab)

At the General Settings section make sure the “Check for Mesh Instances” is checked:

scene settings

Step 1: Select the object you would like to clone:

Select object to clone

Step 2: With the “Select and Move tool selected” hold shift while moving the object.

Step 3: In the popup-dialog, choose “Instance”:

Choose instance

Now press OK. You should now see this:

2nd box is cloned instance

Step 4: OgreMax -> Export -> Export Scene
Conclusion: Now look at the .scene that was created. You will see that both the original object and cloned object, share the same mesh. This way you will save lots of loading time when often using the same meshes.

box01.mesh used twice

posted @   Pulaski  阅读(266)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示