alt=
> HOME > 2013年01月

  

Posted by at

プライズ#104 レコードプレイヤー♪ 1L$

2013年01月27日





「かっこいい」レコードプレイヤーを作りました♪w
環境に優しい1プリで、バリエーションは全9色です。

タッチでどこからともなくレコード盤が登場し、回転します。
レコード盤のラベルは、好きな画像に変えることができます^^


オーナーの長押しで設定メニューが出ます。
 ・リサイズ: 10~1000%
 ・ラベル変更機能のON/OFF

※メッシュですので、大きくリサイズすると換算値が1プリを
 越えてしまう場合があります


設定メニューからロックを解除すると、レコード盤のラベル部分の
テクスチャを変更できる状態になります。
インベントリからフルパーミッションのテクスチャを選択し、
Ctrl+ドロップでプレイヤーに入れてください。
(コンテンツに入ったオブジェクトは自動的に削除されますので、
 コピー不可な一点物などは間違っても入れないようにしてください)

ロック解除中はオーナー以外でも誰でもテクスチャをドロップできる状態に
なっていますので、設定を終えたら必ず「LOCK」を実行してください。



がちゃ屋へ行ってみる
  


Posted by Yuji at 01:15Comments(0)

FireStormをビルドしてみよう♪

2013年01月27日



なんとなく(というのは嘘ですがw)マイ版のFSが欲しくなり、
実際にやってみたので手順をまとめておきました。
WindowsXP-x86-SP3 環境での例で、 VCやらオープンのライブラリは
そこそこ知ってますー、ぐらいの方が対象です。


1.色々とインストール

・VisualC++ 2010 Express
http://www.microsoft.com/visualstudio/eng/downloads#d-2010-express

・DirectX SDK June 2010
http://www.microsoft.com/en-us/download/details.aspx?id=6812

・Python
http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi

・CMake
http://www.cmake.org/files/v2.8/cmake-2.8.10.2-win32-x86.exe

・Mercurial
http://mercurial.selenic.com/release/windows/mercurial-2.4.2-x86.msi

・Unicode NSIS
http://unsis.googlecode.com/files/nsis-2.46.5-Unicode-setup.exe

・Cygwin
http://cygwin.com/setup.exe
Archives/unzip
Devel/bison, flex, patchutils
Web/curl
Libs/libsasl2


2.準備

DOS窓より

set AUTOBUILD_VSVER=100
set PATH=%PATH%;C:\cygwin\bin;C:\Python27;E:\fs\autobuild\bin
"C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\vcvars32.bat"

E:
mkdir fs
cd fs

hg clone http://hg.secondlife.com/autobuild/
hg clone https://bitbucket.org/lindenlab/3p-fmod/
hg clone http://hg.phoenixviewer.com/phoenix-firestorm-lgpl/ -u e32763bf6e2b

-u でリビジョンを指定します。
ちょっと古いですが 4.0.1 に用があるのでそれを取得しています。
http://hg.phoenixviewer.com/phoenix-firestorm-lgpl/branches
で確認できます。

cd 3p-fmod
autobuild build --all

ここでエラーw
fmodapi375win.zip が公開終了らしくDLが失敗するので、
適当な所から拾ってきてゴミに上書きしておく。
(qemuのバイナリリリースに含まれてました)

autobuild build --all
autobuild package

packing fmod
wrote E:\fs\3p-fmod\fmod-3.75-windows-20130126.tar.bz2
md5 3c779f8bc81a18aa1bdede0fedfe8461
のように表示される。

cd ../phoenix-firestorm-lgpl
copy autobuild.xml my_autobuild.xml
set AUTOBUILD_CONFIG_FILE=my_autobuild.xml
autobuild installables edit fmod platform=windows hash=3c779f8bc81a18aa1bdede0fedfe8461 url=file:///E:\fs\3p-fmod\fmod-3.75-windows-20130126.tar.bz2
autobuild configure -c ReleaseFS_open

autobuildのhashとurlの引数に、上記で表示された値をセットします。
これで phoenix-firestorm-lgpl/build-vc100/Firestorm.sln
が作成されてようやく準備完了です。



3.VCの設定
VCディレクトリの設定が必要です。

・実行
$(ExecutablePath)
$(DXSDK_DIR)
C:\cygwin\bin
$(SystemRoot)

・インクルード
$(WindowsSdkDir)include\gl
$(DXSDK_DIR)include

・ライブラリ
$(DXSDK_DIR)Lib\x86

あと、
 ツール>オプション

 プロジェクトおよびソリューション>ビルド/実行

 並列ビルド数
を 1 に設定しないとダメなようです。

/MPが付いているとcl.exeがD8030で落ちるようなので、その場合は
プロジェクトのプロパティで
 構成プロパティ>C++>複数プロセッサによるコンパイル
を「いいえ」にすればとりあえず回避できます。
#hotfixは存在するようですが、ちょっと面倒そうだったので割愛します

warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます
もそこそこ出るので、BOM付きのUTF-8に変換しましょう。
#これはこれでgccで通らなくなりますけどw

無事にビルドが通れば
phoenix-firestorm-lgpl/build-vc100/newview/Release/firestorm-bin.exe
ができるので、同じバージョンの実行環境をインストールしておいて、
そこにexeだけコピーして動かすのが楽だと思います。

後は煮るなり焼くなりお好きな感じで。。(謎w
  


Posted by Yuji at 00:03Comments(0)

SIM負荷ゼロの形状アニメーション

2013年01月25日


サーバ(シミュレータ)の連続的な負荷ゼロで、形状のアニメーションが
できる小技をご紹介しようと思います。

これまでにも複数のプリムを重ねておいて、うち1個だけの
透明度を順番に不透明に切り替えていくアニメーション手法が
ありましたが、切り替えには連続的なスクリプトからの操作が必要でした。
スカルプのマップ切り替えもありましたがこれは負荷が高いです。

メッシュではマテリアルが8面まで使えるようになったため、
真っ先に思いつくのは面単位に透明度を切り替える手法ですが、
それでも切り替えのオーバーヘッドは残ってしまい、連続的な実行に
おいてはあまり理想的とは言えません。

前置きが長くなりましたので紹介に入りますw


根本のアクチュエータはllSetTextureAnim()によるものです。
llTargetOmega()などもそうですが、これらはクライアントサイドで
実行されるため長期間連続で動かしたとしても、シミュレータの
負荷は実質ゼロとなります。

テクスチャの変動では形状のアニメーションはできなさそうにも思えますが、
メッシュではUVマップをユーザが定義できるようになったため、透過テクスチャ
を上手く併用することでポリゴンの表示状態をコントロールできます。
という訳で、Blenderでの製作例など。

1.まずは普通に1面だけ使ってモデリングします

もちろんUV展開も必要です。


2.テクスチャを用意します

下絵を使ってモデリングする場合、こっちが先かもですね^^


3.UVマップ全体を使い切らないようにリサイズします

ここでは4コマのアニメーションを想定していますので、
全体の25%に縮小しています。


4.メッシュ全体を同じ位置に複製し、UVマップをずらして配置します

もちろん、頂点グループなどの機能を使わないと操作的に破綻すると思いますw


5.それぞれの形状に動きをつけます

UVマップは変更してはいけません。


この段階で、このような

テクスチャを適用すれば、テクスチャの表示位置(垂直)を制御することで
それぞれの形状を個別に表示することができます。
(下75%の部分は完全な透明ですので、4つのうち3つのモデルは表示されません)

しかし、、、
LSLにはテクスチャをN分割でスクロールできる機能はないんですね;;;
(もちろんロジック制御なら可能ですが、本件の趣旨からは外れるため割愛します)
そこで、、


6.画像をさらに縮小し、必要なパターンを並べたテクスチャを作成します


テクスチャの用途の配分はこんな感じになります。


このテクスチャを適用しておき、スクリから
llSetTextureAnim(ANIM_ON | LOOP | PING_PONG, 0/*face*/, 4/*horz*/, 1/*vert*/, 0/*start*/, 4/*length*/, 4/*fps*/);
とすると自動的にアニメーションしてくれます。
(この例ではFPSが4ですので1秒間に4コマの速度になります)


頂点数嵩みまくり&テクスチャの解像度が犠牲になりまくりなオマケ付きですが、
負荷ゼロの形状アニメーションってのも乙かもなーと思って記事にしてみましたw

この鯉はお店の前の池で泳いでますので、興味のある方はご覧になってください^^
がちゃ屋へ行ってみる
  


Posted by Yuji at 03:54Comments(0)

プライズ#103 ガスコンロ♪ 1L$

2013年01月24日





グリルの付いたガスコンロを作りました^^

環境に優しい1プリで、バリエーションは本体の色で全11色です。
どのバリエーションでもツマミの色はカラーチェンジできます。
 (3個のツマミが連動して変化します。 全24色)

点火中は炎の部分で+1プリム余分にかかってしまいますので、
残プリが本当にカツカツの場合はお気をつけくださいませ。
 (最大で+3プリム必要です)


ツマミをタッチすると点火できます。
 (2つのバーナーは独立してそれぞれ機能します)
不完全燃焼で赤い炎が出ることがありますが、
動作には影響ございません^m^

一番右のグリルのツマミをタッチすると、どこからともなく
グリル内部にサバが登場し、カナリ盛大に焼けます♪


オーナーがグリルのフタをタッチすると設定メニューが出ます。
 ・リサイズ: 10~1000%
 ・ツマミのカラーチェンジ: 全24色

※メッシュですので、大きくリサイズすると換算値が1プリを
 越えてしまう場合があります


あと使用上の注意点なんですが、点火する際にたまに電池が
切れることがあります。
パネル左上のLEDが点滅してお知らせしますので、
電池ボックス部分をタッチして回復してあげてください^m^

がちゃ屋へ行ってみる


========================================

たまには技術ネタでもw

このガスコンロの頂点数はだいたい8000程度です。
 (ポリゴン数で1万ちょい)
最初3万頂点ぐらいあったんですが、LOD2を保障すると
やはり換算値が1には入らなくて仕方なくダイエットしました。

円柱や球の類を作る場合に32角形で作るとキレイですが、
どうしても頂点数がかさんでしまいますので、ここだけは外せない!
って部分や、大きい円だけを32角形で作り、他の部分は16角形以下で
作るのが妥協点としてはいいとこかなと思います。

あと、blenderのsmooth設定はポリゴンごとに面法線/頂点法線を
選択できる機能ですが、頂点法線を多用するとUPする際に
LOD1、0の下限頂点数をあまり小さく設定できなくなります。
 (省略する頂点を決定するアルゴリズムとの絡みでしょうね)
この場合は別ファイルとして低LOD専用のメッシュを作成しておいて、
対応するLODごとにUPすることで回避できますが、マテリアルの
構成を元のメッシュと合わせておかないと、ビューアのくだらないバグを
引いてしまいますw
 (一旦低LODになると、そのマテリアル構成が高LODのモデルに
  無理やり適用されたようになります@FireStorm)
さらに、未使用のマテリアルがオブジェクトに含まれる場合も微妙な
動きになるので、未使用面は消しておいたほうが良いようです。

結局、置き物をメッシュで作る場合は、
 モデルをキレイに作りすぎない
が最大のコツではないかと思われます、、、なんだかなーw
  


Posted by Yuji at 01:00Comments(2)

プライズ#102 レジスター型チップジャー♪ 1L$

2013年01月21日





レトロな感じのレジスターを作りました^^
さすがに現物には触れたことがなくて使い方は謎なんですが、
ボタンは写真を見ながら似せて作りました。

環境に優しい1プリで、バリエーションは18色です。
チップジャー機能が付いてますが、機能自体をON/OFFできますので、
置き物としてもお使いいただけます^^

オーナーのタッチで設定メニューが出ます。
 ・リサイズ: 10~1000%
 ・チップジャー機能: ON/OFF
 ・チップジャーのオーナー名表示: ON/OFF
 ・チップのランキング表示: ON/OFF
 ・チップ履歴のリセット

※メッシュですので、大きくリサイズすると換算値が1プリを
 越えてしまう場合があります

カフェなどにいかがでしょうか♪

がちゃ屋へ行ってみる

ロケ地はコチラ♪おうち屋++HY's++
  


Posted by Yuji at 00:35Comments(0)