Traumachicken

ラベル unity の投稿を表示しています。 すべての投稿を表示
ラベル unity の投稿を表示しています。 すべての投稿を表示

11/25/2011

Shader "Library/Cull All"

背景を透過する3Dマスクシェーダ

Shader "Library/Cull All"
{
 SubShader
 {
  Tags {"Queue" = "Background"}
  Blend SrcAlpha OneMinusSrcAlpha //ブレンド
  Lighting Off
  ZWrite On
  ZTest Less //重要:一度描画した部分は描画しない
  Pass
  {
   Cull Back //別にいらない
   Color(0,0,0,0)
  }
 }
}
http://forum.unity3d.com/threads/26945-Diablo-style-health-orb

11/24/2011

DropboxにUnity Web Playerを置く

  1. DropboxのPublicフォルダ?に.htmlと.unity3dを置く。
  2. .htmlのメニューからパブリックリンクを取得してアクセス。
  3. http://dl.dropbox.com/u/3239718/index.html
  4. ZOMG

6/05/2011

Unity :Resources.Load()

テクスチャを動的に変更しようとしたところでつまづいた。
テクスチャの変更自体は下のように書く。
renderer.material.mainTexture = newTexture ;
Editor(Hierarchy)内で使われてないファイルを呼び出す場合は、
Resources.Load()を使う。

注意しなければならないのは、
呼び出すファイルはResourcesフォルダ内にないといけないこと。
Resourcesと名のつくフォルダの外にあるものは、
いくらパスを通そうが呼び出せない。


上の状態でzombie_texを呼び出すには、
Resources.Load("Textures/zombie_tex") ;
よってテクスチャの変更は、
render.material.mainTexture = Resources.Load("Textures/zombie_tex") ;
となる。

パスの"Resources"と、ファイルの拡張子は必要ない。
Resourcesファイルが複数ある場合は、
全部のフォルダを探しに行ってくれる。


おかげでフォルダの階層がめちゃくちゃになった。


6/02/2011

Unity :prefab

実はインスタンスの作り方すらわからんかった
Unityではまず元となるクラスをprefabで作る


ひひ
Assets>Create>Prefabを実行すると
HierarchyではなくProjectに空のprefabができる
これは.prefabとして該当フォルダにファイルが実際に作成されたものだ

CubeやPlaneも他人の作ったprefabを使っていたというわけだ

中身を追加するには、
Hierarchyパネルでしこしこ組み立てたオブジェクトを
空のprefabにドラッグしてやる

prefabのプロパティに同じものが追加されたら成功

var prefab : Transform ; 
Instantiate (prefab, Vector3(0, 0, 0), Quaternion.identity);

あとはこの1行でいくらでも複製できる2行かよ

プロパティパネルでprefab変数にprefabをぶちこもう

これをコードで呼び出す方法を探していたわけなんだが
まあとりあえずこれでいいや

Hierarchyで青ネームになっているオブジェクトは、
何かのprefabからできたものであることを表わしている


そのオブジェクトは今もprefabとリンクしていて、
SelectやRevertといったボタンがプロパティに表示されているはずだ

Selectを押すとソースのprefabを選択する
Revertはインスタンスに加えた変更をソースの内容に戻しそう
Applyはインスタンスに加えた変更をソースに適用する

ソースを編集したい場合は、
リンクされたインスタンスを編集してApplyする

もちろんソースに加えた変更は
リンクされているインスタンスにも即適用される当たり前だろ

リンクをぶち壊すには、
インスタンスに新しいコンポーネントやオブジェクトを追加する
ダイアログが出るので、確認してぶち壊す


作成されたインスタンスの名前には勝手に(Clone)が付くらしい

なんかセカンドライフを思い出した