#author("2024-09-02T05:57:07+00:00","default:iseki","iseki")
#author("2024-09-02T05:57:48+00:00","default:iseki","iseki")
***  [[osSetDynamicTextureURL>../osSetDynamicTextureURL]] [#y8603f3e]
- public string [[osSetDynamicTextureURL>../osSetDynamicTextureURL]](string dynamicID, string contentType, string url, string extraParams,  int timer)
- 指定したURLの画像データをオブジェクトのテクスチャとする.
-- dynamicID: 未使用. 現時点では必ず空文字(String.Empty)とすること.
-- contentType: 現時点では ''image'' のみ.
-- url: 画像の URL
-- extraParams: パラメータ. ''image (LoadImageURLModule)'' では未使用.
-- timer: リフレッシュタイム.
-- 戻り値: dynamicID が空文字でない場合は空文字が返る.dynamicID が空文字の場合,失敗しても成功してもUUIDの文字列を返す.ただし,これはテクスチャのUUIDと一致しない(バグか?)


*** 関数の呼び出しフロー [#kec3e400]
- OpenSim/Region/CoreModules/Scripting/DynamicTexture/DynamicTextureModule.cs
-- UUID AddDynamicTextureURL() 
--- OpenSim/Region/CoreModules/Scripting/*/*Module.cs (* はモジュール名)
---- contentType に対応したモジュール(RenderPlugins[contentType]) が自動的に呼び出される.現時点では ''image''(''LoadImageURLModule'')にのみ対応.
---- bool RenderPlugins[contentType].AsyncConvertUrl()  
---- 現時点では LoadImageURLModuleの この''↑'' 関数は,成功しても失敗しても ''true'' を返す(バグか?).
**** OpenSim/Region/CoreModules/Scripting/DynamicTexture/DynamicTextureModule.cs
- UUID AddDynamicTextureURL() 
-- OpenSim/Region/CoreModules/Scripting/*/*Module.cs (* はモジュール名)
--- contentType に対応したモジュール(RenderPlugins[contentType]) が自動的に呼び出される.現時点では ''image''(''LoadImageURLModule'')にのみ対応.
--- bool RenderPlugins[contentType].AsyncConvertUrl()  
--- 現時点では LoadImageURLModuleの この''↑'' 関数は,成功しても失敗しても ''true'' を返す(バグか?).


*** サンプル [#g21fa543]
 integer picindex=0;
 list urlarray = [] ; 
 
 default
 {
    state_entry()
    {
        llSay( 0, "osSetDynamicTextureURL Tester");
        urlarray += ["http://www.goes.noaa.gov/FULLDISK/GEVS.JPG"];
        urlarray += ["http://www.goes.noaa.gov/FULLDISK/MTVS.JPG"];
        urlarray += ["http://www.goes.noaa.gov/FULLDISK/GIVS.JPG"];
        urlarray += ["http://www.goes.noaa.gov/FULLDISK/GMVS.JPG"];
        urlarray += ["http://www.osei.noaa.gov/IOD/OSEIiod.jpg"];
        urlarray += ["http://internettrafficreport.com/gifs/tr_map_global.gif"];
    }
 
    touch_start(integer total_number)
    {
        string dynamicID="";
        integer refreshRate = 600;
        string contentType="image";
        picindex = (picindex+1) % urlarray.Length;
        string srcURL = llList2String(urlarray, picindex); // URL
        osSetDynamicTextureURL(dynamicID, contentType ,srcURL , "", refreshRate );
    }
 }

*** Bug [#n6b8b686]
- 返す文字列が,テクスチャの UUID になっていない.(仕様か?)
- テクスチャ面に回転の設定を行っていると,osSetDynamicTextureURL を呼び出すたびに少しずつ回転角がずれて行く.

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 ページ一覧 検索 最終更新   ヘルプ   最終更新のRSS