OGRE 1.7.0 RC1的新功能和改進

來源:互聯網
上載者:User

原文地址:http://blog.csdn.net/miaolinvip/archive/2010/01/08/5158979.aspx

 [翻譯]OGRE 1.7.0 RC1 [爆燃者--克圖格亞] 已經發布! 

We said we’d try to get this out before the end of the year, and with only hours to spare we just about made it! OGRE 1.7 has been under development for over a year now, and the time has come to draw a line under it and get it shipped as a brand new stable version. Unlike the maintenance releases we’ve been issuing regularly for 1.6, this release includes a huge number of new features and enhancements, of which the headliners are listed after the jump. Edit: I forgot to mention that this release makes official our transition to the MIT License – we’ve been using it in Subversion for a while so it slipped my mind that this is the first ‘official’ release under that license. So that’s news!

As usual, plenty of people have been testing it direct from Subversion for a while now, but even so we’re issuing it as a Release Candidate to begin with. Due to time constraints, we’re also only issuing this as a source release for the moment – prebuilt SDKs will follow in a second Release Candidate or the final.

For those of you using Subversion, the new path for Ogre 1.7 is now https://svn.ogre3d.org/svnroot/ogre/branches/v1-7. Otherwise, you can find the new release on the source downloads page.

Happy New Year!

Here are some of the main new features and enhancements you’ll find in OGRE 1.7:

我們在之前曾經說過要嘗試在年底之前發布這個版本,我們剛剛才在剩餘幾個小時裡完成了它的製作!現在OGRE 1.7已經完成了持續一年的開發,並且這次是一個全新的基準的穩定的版本。與我們已經定期發布的1.6維護版本所不同的是,這次的發布包含了大量新功能和 改進,在這些標題之後已經列出了這些飛躍。編輯:我忘記提到了,這次正式發布我們已經轉變為使用麻省理工大學許可協議---我們其實已經在svn上使用它 一段時間了,因為我當時把它忘記了,這是首次“正式的”用該協議發布。所以是新聞。。!

通常,目前許多人已經直接從SVN上測試它一段時間了,但是即使如此我們還是首先向侯選人發布。由於時間的限制,我們此刻也只能發布一個源碼版的,SDK將緊接著在第二次侯選人中發布或者最終發布。

你正在使用SVN的話,Ogre1.7的新路徑現在是https://svn.ogre3d.org/svnroot/ogre/branches/v1-7,除此之外,你還可以在源碼下載頁面上找到這個新版本。

新年快樂!

這是你將在Ogre 1.7中找到的一些主要的新功能和改進:

Due to time constraints(呵呵現學現用~~~),之後的內容以後再繼續翻。

///////////////////////////////////////////////////////////////2010.1.9 繼續翻譯//////////////////////////////////////////////////////////////

License changes

  • OGRE 1.7 is now released under the MIT License

許可的改變:

      OGRE 1.7 現在是跟據麻省理工大學許可中的條款發布。

Compositor changes

  • Allow ‘pooled’ compositor surfaces.

    • Separate compositor instances using the same size & format surfaces can share them, saving memory
    • System detects the compositor instance chaining to avoid problems with interdependence
    • ‘pooled’ has to be explicitly enabled on texture definitions, it is not the default because once enabled you cannot necessarily rely on being able to see all the intermediate texture results (because they can be ping-ponging across shared textures); people may be relying on this

合成器的改變:

       ·允許"pooles"合成器表面.

               不同的合成器執行個體使用一個相同大小&格式的表面時可以共用他們了,這樣可以節省記憶體

               系統檢測這個合成器執行個體鏈以避免相互依賴的問題。

               "pooles"屬性是要在紋理定義之時明確啟用的,他不是預設啟用的,因為一旦它被啟用,你必定不能指望看到所有中間紋理的結果。(因為它們能被交叉共用的紋理);有些人也許依賴這一點。

  • Manual switching between supported compositor techniques is now possible on the fly

    • Compositor techniques can now have ’scheme’ names, you can manually switch between supported techniques using the scheme name to drop to different approaches for reasons other than hardware compatibility (performance, alternative tweaks etc)
    • You can keep & share the textures used by previously active techniques so switching back & forth is faster (must use ‘pooled’ option for this).

      ·現在能夠在運行時手動交換兩個合成器技術.

               合成器技術現在有一個'scheme'的複合名,你能手動的交換兩個被支援的技術,通過這個scheme命名來省去各式各樣的方法,除非你為了硬體相容性(效能,取捨是很困難的)。

               你能通過先前啟用的技術儲存&共用這個用過的紋理,那麼還原或者向前都會比以前更快的。(為了這個功能你必須使用"pooled"選項)

  • Compositors can- now specify if they don’t want to inherit the FSAA setting from the main target for texture definitions (’no_fsaa’)

      如果它們不想要從主目標繼承這個FSAA設定,現在合成器能明確指定紋理為'no_fsaa'。

  • Compositors can now turn on sRGB gamma conversion per texture definition instead of just inheriting from the main surface (’gamma’)

    合成器現在能開啟 “逐紋理sRGB gamma 轉換功能(gamma)” 以替代僅僅從主表面繼承的方法。

  • Cross-compositor communication (from SoC2009 Compositor)
    • Define a texture as accessible from other locations by the chain_scope or global_scope directive in the texture definition
    • Reference a texture from a different compositor in the chain (or in general) using the texture_ref directive

            合成器之間的交叉通訊(來自2009夏季代碼大賽)
定義一個從其它位置很容易獲得的紋理,可以通過這個正式的紋理定義 chain_scope 或者 global_scope。
要引用一個來自於同一個鏈中(或者在通用裡)的不同的合成器中的一個紋理,可以使用這個 texture_ref 指令.

  • Compositor <-> code connection improvements (from SoC2009 Compositor)

    • It is now possible to define a custom composition pass (instead of just quad/scene/clear) in code and trigger it using the render_custom composition pass type.
    • You can now link between a compositor and related code (for example, a compositor listener) automatically using CompositorLogics.

            合成器和代碼之間串連的改善(來自2009夏季代碼大賽)

                      它現在是可以在代碼和觸發器中定義一個自訂合成器pass(而不只是 quad/scene/clear),它使用render_custom 這個pass類型.
你現在能把一個合成器和相關代碼做串連了,它可以自動的使用合成器邏輯(例如,a compositor listener).

 

 

SceneManager changes (from SoC2009 Compositor)

  • It is now possible to pause a frame’s rendering mid-way (for example, during a callback called in the middle of the process) to trigger a side render and then resume rendering. See SceneManager::_pauseFrame and SceneManager::_resumeFrame.
  • Added an option to manually trigger the updating of shadow textures for specific lights. See SceneManager::prepareShadowTextures. The combination of the two new additions allow reusing a single texture for multiple shadowmaps.  

 情境管理器改變 (來自2009夏季代碼大賽)

         它現在可以在中途暫停一幀的渲染(例如,在一個進程的中間裡回調的時期)來觸發一個側面渲染,然後重新開始渲染。詳見 SceneManager::_pauseFrame and SceneManager::_resumeFrame.

         額外添加一個選項手動觸發這個陰影帖圖的更新為了指定的光照。詳見SceneManager::prepareShadowTextures.  這兩個新增功能的結合可以允許你重用一個紋理為了多重陰影。

  • New Sample Browser (from SoC2009_Samples)
    • Instead of many separate demos, we now have one integrated sample browser
    • Samples are pluggable libraries that can be reloaded at runtime without restarting the browser
    • A simple ‘tray’ system is used to make sample GUI controls easy to create

    新加的例子瀏覽器(來自2009夏季代碼大賽)
    替代之前的許多不同的demo,我們現在有一個完整的例子瀏覽器
    例子們都是可插拔的庫,能在運行時被重新載入而不用重新啟動瀏覽器。
    一個簡單的轉盤系統是被用來製作例子的簡單建立的介面控制項

  • Antialising changes
    • Support for Coverage Sampled AA (CSAA) – Dx9 & Dx10 only for now
    • Unified & simplified AA settings
      • on Root’s config options the setting is now called ‘FSAA’ in all cases, and consist of samples and a hint string (separated by spaces)
      • on the miscParams to createRenderWindow you can supply ‘FSAA’ and ‘FSAAHint’. The former is the number of samples, the latter any hinting (e.g. ‘Quality’)

    消除鋸齒的改變
    支援CSAA,在目前這個時候只能在dx9或dx10裡使用。
    標準的或者簡化的抗钜齒設定
    在所有情況下,Root的配置選項上這個設定目前被稱為'FSAA',並且由採樣方式和一個提示字串組成(通過空格隔開)
    在createRenderWindow的miscParams參數上你可以提供 "FSAA" 和 "FSAAHint"參數,前者是這個採樣的倍數,後者是一些提示(品質)

  • Light changes
    • Near/far plane settings for shadow cameras can now be manually configured per light if required
    • You can now mask lights out per object by calling MovableObject::setLightMask – a renderable object’s mask is bitwise and’ed with the light’s mask and the light is excluded if the result is 0.

    光照的改變
    陰影攝像機的近/遠裁減面設定現在能被每個燈光手動設定了,如果你需要的話。
    你現在可以通過調用MovableObject::setLightMask來遮蓋光照,一個可渲染物體的掩碼是一個逐位的與這個燈光的掩碼有關,並且如果結果是0,這個燈光是被排除的。

  • LOD changes (from Soc2008_LOD)
    • LOD no longer has to use distance as a metric for changing LOD levels
    • LodStrategy can now be set on both Material and Mesh, to either Distance or PixelCount (new strategies can also be added)
  • STL container changes
    • All STL containers now use custom memory allocators

    LOD的改變
    LOD不再是使用以米為單位的距離來改變LOD層級了。
    LOD策略現在在材質和網格上都能被設定,不是按距離的就是像素計數。(新策略也能被添加的)

    STL容器
    所有的STL 容器現在使用自訂的記憶體 Clerk.

    Optimisations

    • Fixed-function light state is now handled more intelligently, leading to better performance with large numbers of objects
    • Shader parameters are now updated more selectively, reducing unnecessary updates

    最佳化
    固定管線的光照狀態現在被更聰明的處理,當物體數量巨大的時候能導致更好的效能。
    更新著色器參數現在有更大的選擇性,減少不必要的更新。

    GpuProgramParameters changes

    • Support added for shared parameter sets which allow you to define / update shader variables for many programs and materials in one place. See GpuProgramManager::createSharedParamerers
    • Use shared_params, shared_param_named and shared_params_ref in scripts to define and reference shared parameter sets.
    • Parameters are now automatically migrated when the program they are based on is changed and reloaded; any parameters which still apply are merged into the new parameters

     Gpu程式參數的改變(這一段翻譯可能不正確)
    增加了共用參數集的支援,允許你定義/更新shader變數為了在一起的許多程式和材質.參考

    GpuProgramManager::createSharedParamerers.
    使用 shared_params , shared_param_named 和 shared_params_ref 在指令碼裡定義和引用共用參數集
    參數現在是自動遷移的,在這個程式是被改變和被重新載入的時候,一些參數被合并到新參數裡。

     

    Archive changes

    • Archive now supports create and remove of files (FileSystem only implemented for now)

    檔案的改變
    檔案現在支援建立和移除檔案夾了(現在僅在FileSystem才生效)

    DataStream changes

    • Writeable data streams are now supported (FileSystem only implemented for now) 

    資料流的改變
    可寫的資料流,目前是被支援的。(現在僅在FileSystem才生效)

    File handling changes

    • New class StreamSerialiser is the new way to read & write binary chunk-based formats

    檔案處理的改變
    新加的一個類 StreamSerialiser 是讀寫位元據基本格式的新方法。

  • Build changes
    • Cmake is now used to generate project files, separate explicitly maintained build systems are being removed. See Building With CMake

    Build的改變
    Cmake現在被用來產生專案檔的,separate explicitly maintained build systems是被移除的。詳見 Building With CMake.

  • RenderWindow changes
    • miscParams now supports ‘vsyncInterval’ option, allowing you to sync to a multiple of the refresh rate if you want (and the hardware supports it)

    RenderWindow的改變
    miscParams參數現在支援 “vsyncInterval”選項,允許你按一個倍數同步鎖定,如果你想要的話(並且硬體也要支援它)

  • Viewport changes
    • Added clear method to manually clear any combination of colour/depth/stencil to a specified value without performing an update.

    視口的改變
    增加了一個clear方法來手動清除任何 顏色/深度/模板的組合,這個指定值不執行更新操作。

  • Image changes
    • Added loadTwoImagesAsRGBA and combineTwoImagesAsRGBA to make it easier to construct combined normal/height and diffuse/specular images etc

    圖片的改變
    增加了 loadTwoImagesAsRGBA 和 combineTwoImagesAsRGBA 這兩個方法,使用它可以更容易的構造 法線/高度圖 和 漫反射/高光圖等組合

  • New Paging Component
    • SceneManager-independent, separate optional component (OGRE_HOME/Components/Paging)
    • Pluggable strategy components to control paging strategy for a section of the scene
    • Pluggable content components to control paging of content
    • Plugggable collection components so that paged elements can be composed or selected between in different ways (e.g. paging many LOD levels within a page)

    新的分頁組件
    從情境管理器中獨立,成為幾個不同的可選組件。
    可插拔的策略組件來控制分頁策略為了這個情境的一部分。
    可插拔的內容組件來控制分頁的內容
    可插拔的集合組件以便於已分頁的元素能在兩個不同的方法間被組合或者選擇(比如 分頁中的許多LOD層級一個頁面範圍裡)

    New Terrain Component

    • SceneManager-independent, separate optional component (OGRE_HOME/Components/Terrain)
    • Inherently editable
    • Hierarchical geometry batching; batch counts reduce at lower LODs as well as vertex count. At the lowest level of detail, the entire terrain page is a single batch.
    • LOD now adapts in real-time to camera settings (viewport sizes & LOD bias) so you can use the same terrain with multiple views efficiently
    • Skirts are used instead of stitching to avoid cracks in geometry; this means fewer indexing arrangements & lower overall index buffer usage
    • Saving & loading of terrain built in, including loading / processing in a background thread
    • In-built support for splatting layers, configurable sampler inputs and pluggable material generators
    • Support for generating global normal maps and light maps, in a background thread

    新的地形組件

       從情境管理器中獨立出來,分離為可選擇的組件
    內建可編輯功能

       幾何體分級批次渲染;批次渲染數量隨著更低的LOD層級縮減,在細節的最低層級,整個地形分頁是一個單獨的批次。

       現在配置LOD在即時攝像機設定裡(視口大小 與 LOD 位移), 所以你能使用一樣的地形加倍視圖效率。

       邊緣是使用縫合來避免幾何體的裂縫;這意味著更少的安排索引與更低的綜合索引緩衝的用法。
    地形的儲存與載入是內建的,包含後台線程載入和處理。
    內建支援帖圖層,可配置的輸入採樣器和可插拔的材質產生。

       支援產生全域法線帖圖和光照帖圖,在一個後台線程裡。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.