99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

NVisionXR_iOS教程五——添加燈光渲染

接著上一章的例子,這章節來介紹一下三種燈光(平行光、點光源、聚光燈)的使用。 
引入頭文件#import ''NVWorldLight.h'' 
1、創建平行光 
在onCreate里面實例話燈光對象,代碼如下圖 
NVisionXR_iOS教程五 —— 添加燈光渲染 
代碼: 

在成都網站設計、網站建設過程中,需要針對客戶的行業特點、產品特性、目標受眾和市場情況進行定位分析,以確定網站的風格、色彩、版式、交互等方面的設計方向。創新互聯還需要根據客戶的需求進行功能模塊的開發和設計,包括內容管理、前臺展示、用戶權限管理、數據統計和安全保護等功能。

    // 燈光、地面、粒子都屬于世界對象,所以需要從NVWorld中創建 
    // 先確認場景中是否添加過了相同名字的燈光,因為要確保對象創建的唯一性 
    NVWorldLight *light = (NVWorldLight *)[[self getWorld] getObjectByName:@"dir_light"]; 
    if (!light) { 
        light = (NVWorldLight *)[[self getWorld] createObject:LIGHT objectName:@"dir_light"]; 
        // 設置燈光類型 
        [light setType:DIRECTION]; 
        // 設置燈光的坐標 
        [light setDirection:NVPosition(0, -1, 0)]; 
    }



在onStart里附加燈光到場景中,代碼如下圖 
NVisionXR_iOS教程五 —— 添加燈光渲染 
代碼: 

    NVWorldLight *light = (NVWorldLight *)[[self getWorld] getObjectByName:@"dir_light"]; 
    // 將燈光添加到場景中 
    if (light) { 
         [light attach:self]; 
    }

在onStop里將燈光從場景中移除,代碼如下圖 
NVisionXR_iOS教程五 —— 添加燈光渲染 
代碼: 

     NVWorldLight *light = (NVWorldLight *)[[self getWorld] getObjectByName:@"dir_light"]; 
    // 將燈光從場景中去除 
    if (light) { 
         [light dettach]; 
    }



這樣就完成了燈光的創建、附加和移除,運行項目,對比上一章沒有加燈光的效果來看 
NVisionXR_iOS教程五 —— 添加燈光渲染 
立方體的四面有明顯的明暗效果,顯得更加真實。 

2、創建點光源 
創建方法和平行光類似,如下圖,需要注意是點光源沒有方向,所以不需要設置燈光方向(設置了也無效),還有就是點光源有位置。 
NVisionXR_iOS教程五 —— 添加燈光渲染 
代碼: 

    // 燈光、地面、粒子都屬于世界對象,所以需要從NVWorld中創建 
    // 先確認場景中是否添加過了相同名字的燈光,因為要確保對象創建的唯一性 
    NVWorldLight *light = (NVWorldLight *)[[self getWorld] getObjectByName:@"point_light"]; 
    if (!light) { 
        light = (NVWorldLight *)[[self getWorld] createObject:LIGHT objectName:@"point_light"]; 
        // 設置燈光類型 
        [light setType:POINT]; 
        // 設置燈光的坐標 
        [light setPosition:NVPosition(2.0, 2.0, 2.0)]; 
        // 設置燈光是否具有衰減性 
        [light enableAttenuation:YES]; 
    }



燈光的附加和刪除和平行光的寫法一樣,只要找到對應的燈光對象名即可,這里就不貼代碼了。 
NVisionXR_iOS教程五 —— 添加燈光渲染 

運行項目,由于燈光的位置是在立方體的右上方,所以可以看立方體右上明,其余地方比較暗。 

2、創建聚光燈 
創建方法和點光源一樣,但是聚光燈有方向也有位置,如圖: 
NVisionXR_iOS教程五 —— 添加燈光渲染 
代碼: 

    // 燈光、地面、粒子都屬于世界對象,所以需要從NVWorld中創建 
    // 先確認場景中是否添加過了相同名字的燈光,因為要確保對象創建的唯一性 
    NVWorldLight *light = (NVWorldLight *)[[self getWorld] getObjectByName:@"spot_light"]; 
    if (!light) { 
        light = (NVWorldLight *)[[self getWorld] createObject:LIGHT objectName:@"spot_light"]; 
        // 設置燈光類型 
        [light setType:SPOT]; 
        // 設置燈光方向 
        [light setDirection:NVPosition(-1, -1, -1)]; 
        // 設置燈光的坐標 
        [light setPosition:NVPosition(1.0, 1.0, 1.0)]; 
        // 設置燈光是否具有衰減性 
        [light enableAttenuation:YES]; 
    }

燈光的附加和刪除也一樣。 
NVisionXR_iOS教程五 —— 添加燈光渲染 
運行項目,由于燈光的位置是在立方體的右前上方,燈光的方向斜對著物體,所以可以看立方體右前上的一角很亮,其余是暗的,效果如圖: 

通過本章節,大家應該已經掌握了燈光的加載,在下一章節,我會介紹如何點與場景中的物體進行交互。 

網頁標題:NVisionXR_iOS教程五——添加燈光渲染
轉載源于:http://www.yijiale78.com/article4/pcsgie.html

成都網站建設公司_創新互聯,為您提供ChatGPT小程序開發網站排名網站設計Google關鍵詞優化

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

小程序開發