[過去ログ] 【3Dゲームエンジン】Unity質問スレッド32 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
347: 2017/11/22(水)20:39 ID:/VB6By5Z(1) AAS
 >>328 
 すまねえ、クリエイティブコモンズの存在があった 
348(3): 2017/11/22(水)20:58 ID:eejsxAcQ(1) AAS
 ドット絵の素材で上下左右向きのある素材教えてください。 
349: 2017/11/22(水)23:38 ID:iE8jtKZG(1) AAS
 >>348 
 素材提供スレじゃねえけど、そういうのツクール素材で探せばええんちゃう? 
350(2): 2017/11/23(木)00:14 ID:QRNVPncp(1) AAS
 新しくC#スクリプトを作ったら 
 オブジェクト参照がオブジェクトインスタンスに設置されていませんというエラーが出て 
 テストプレイしてもコンパイルエラーで実行できなくなったのだけど 
 なにか工程を忘れているのでしょうか? 
351: 2017/11/23(木)00:36 ID:RZCCd0Fm(1/2) AAS
 はい 
352: 2017/11/23(木)02:39 ID:aJavQgtq(1/3) AAS
 >>350 
 たぶん、アセットを買い忘れたのでしょう 
353(5): 2017/11/23(木)02:44 ID:wLnswzoG(1/4) AAS
 Unityのシェーダーで質問です 
 カスタムラインティング(lighting○○)の記述方法で困っています。 
 イメージとしては標準であるシェーダーのUnlit>Textureのような 
 元のテクスチャと同じ色をカスタムライティングで表現がしたいです 
  
 void surf(Input IN, inout SurfaceOutput o){ 
  o.Albedo = tex2D(_MainTex, IN.uv_MainTex).rgb; 
 } 
  
 fixed4 Lighting○○(SurfaceOutput s, fixed3 lightDir, fixed atten){ 
  half4 c; 
  c.rgb = ■■; 
  c.a = s.Alpha; 
  return c; 
 } 
  
 ■■の部分に0.0を入れた場合本来のテクスチャより大分黒くなってしまいます。 
 かといって1.0を入れてみても真っ白になってしまいます。 
  
 数字の問題じゃなくてどこかの設定をかえるべき場合 
 シェーダーのどこを修正すれば良いでしょうか 
 それらしい単語や参考となる資料何かないでしょうか 
354(1): 2017/11/23(木)03:03 ID:RZCCd0Fm(2/2) AAS
 0.5をいれろ 
355(1): 2017/11/23(木)03:05 ID:aJavQgtq(2/3) AAS
 >>353 
 アセットを買いましょう 
356: 2017/11/23(木)03:08 ID:hlwE+o0N(1) AAS
 >>353 
 俺、シェーダーのことは何も知らんけど、RGBで0黒くなったり1で白くなったりするなら 
 明暗制御してそうだし、0.5でも入れて試してみればいいんじゃないの? 
 試した上で書いてるなら申し訳ない 
357: 353 2017/11/23(木)03:19 ID:wLnswzoG(2/4) AAS
 外部リンク[html]:docs.unity3d.com 
 ちなみにマニュアルのこのページを参考にしています 
  
 >>354 
 0.5や0.1をいれても元のテクスチャの色では表示されないんですよね… 
 (0.01刻みで全て試しました) 
>>355 
 アセットかわないと作れないのでしょうか? 
358(1): 2017/11/23(木)05:31 ID:VzY+3J1y(1/4) AAS
 surf 関数の中でSurfaceOutputのAlbedoにテクスチャ色を代入してるんだから、Lighting関数ではs.Albedoを使わないとそりゃテクスチャ色は反映されないでしょ 
  
 o.Albedo = s.Albedo.rgb * 0.5; 
  
 でも試してみ 
359: 2017/11/23(木)06:55 ID:VzY+3J1y(2/4) AAS
 おっとo.Albedoじゃないや 
 寝ぼけてるな 
  
 c.rgb = s.Albedo * 0.5; 
  
 だった 
360: 2017/11/23(木)07:46 ID:Fif9lAfv(1) AAS
 ID:wLnswzoG 
 質問のテンプレが完全にキムチw 
361: 2017/11/23(木)09:12 ID:iDiAdE9o(1) AAS
 fps一人で作れるか 
362: 2017/11/23(木)11:16 ID:81qTUW9X(1) AAS
 359は男前 
363(1): 353 2017/11/23(木)12:30 ID:wLnswzoG(3/4) AAS
 >>358 
 回答ありがとうございます 
 その場合でも若干元の色よりくすんで表示されるようです 
 どうやら調べてみたらLightingのScene->SkyBoxのAmbientが影響しているようでした 
  
 シーン全体に影響はでますが 
 insensityを0にした状態でc.rgb = s.Albedo * 1.0にしたら 
 Unlit>Textureとまったく同じ色合いになり解決しました 
364(1): 2017/11/23(木)13:07 ID:VzY+3J1y(3/4) AAS
 >>363 
 Unlit/Textureとほぼ同じ動作をさせたいなら元ソースから改変したらどうだい? 
  
 外部リンク:unity3d.com 
  
 ここからビルトインシェーダーのソースをダウンロードしてUnlit-Normal.shaderの中身を確認してみ 
 ライティングの影響受けるサーフェスシェーダーじゃなくてバーテックス/フラグメントシェーダーになってる 
365(1): 2017/11/23(木)13:19 ID:VzY+3J1y(4/4) AAS
 どうしてもサーフェスシェーダーでやるなら 
 #pragma surface surf 〜の行に noambient を足せば出来るらしい 
 試したら出来た 
366: 353 2017/11/23(木)13:33 ID:wLnswzoG(4/4) AAS
 >>364 
 厳密に言うとそこからさらに独自の影をかけたいのでUnlit/Textureそのままじゃダメなんですよね 
 Unlit/Textureのソースだとたしかlightning offとなっていて 
 ライティングシェーダーそのものがOffになってました 
  
 >>365 
 貴方が神ですありがとうございます! 
 Lightingのinsensityを下げる以外は頂点・フラグメントシェーダー以外方法がないかと諦めていたのですが 
 この方法ならサーフェスシェーダーだけでも出来るんですね 
 助かりました 
  
 というわけで質問〆ですありがとうございました。 
367: 名無し@キムチ 2017/11/23(木)19:44 ID:zG98k7/b(1) AAS
 >>348 
 ドット絵の素材で上左右向きのものはたくさんありますが、上下左右向きのものはちょっとないと思います。 
368(2): 2017/11/23(木)20:27 ID:0DStohp5(1) AAS
 いやあるでしょ 
 むしろ3方向素材より4方向素材のほうが多いっしょ 
369: 2017/11/23(木)20:38 ID:8VVO/uAT(1/7) AAS
 はい、というわけで 
 「左右後頭部だけのドット絵なんか使えないだろキムチ君」と心でツッコミいれてROMってる人達 
 こんばんは 
  
 本日の講義のお時間です 
  
 前回に引き続き「IF分の色々」です 
370: 2017/11/23(木)20:44 ID:8VVO/uAT(2/7) AAS
 IF分は次のように"多重"にすることもできます。 
  
 例 
 if( a == 1 ){ 
   if( b == 1 ){ 
     Debug.Log("aとb両方が1だよ"); 
   } 
 } 
  
 こうすることにより1つだけではなく複数の条件がそろった時にIFを成立させる事ができるわけです。 
 上の例では2重ですが当然ながら3重にも4重にも無制限に行えます。 
 ただしとても見づらくなっていきます。 
  
 例 
 if( a == 1 ){ 
   if( b == 1 ){ 
     if( c == 1 ){ 
       if( d == 1 ){ 
          Debug.Log("aとbとcとd、全部が1だよ"); 
       } 
     } 
   } 
 } 
  
 そこで算術演算子である「&&(アンドと呼ぶ)」を使う事で同じ事が見やすく行えます。 
  
 例 
 if( a == 1 && b == 1 && c == 1 && d == 1 ){ 
  Debug.Log("aとbとcとd、全部が1だよ"); 
 } 
  
 この2つの例は見た目は違いますが実行結果は同じになります。 
371: 2017/11/23(木)20:50 ID:8VVO/uAT(3/7) AAS
 if( a == 1 && b == 1 && c == 1 && d == 1 ){ 
  Debug.Log("aとbとcとd、全部が1だよ"); 
 } 
  
 はaもbもcもdも"1"の時にifが成立します。 
 4つのうちどれか1つでも"1以外"だとifが成立しなくなります。 
  
 次の例では、「a、b、c、dのどれか1つでも1ならばifを成立させたい」やり方です。 
 算術演算子の「||(オアと呼ぶ)」を使います。 
  
 例 
 if( a == 1 || b == 1 || c == 1 || d == 1 ){ 
  Debug.Log("aかbかcかdのどれかが1だよ"); 
 } 
  
 このように「&&」「||」を使う事でさらに柔軟な条件分岐を行えます。 
372: 2017/11/23(木)20:59 ID:8VVO/uAT(4/7) AAS
 if文は基本は「条件が成立した時に実行したい」処理を書くわけですが 
 逆に「条件が不成立の時に実行したい」処理を書くこともできます。 
 それには「else節」を使用します。 
 まずはelse節がないif文の例です。 
  
 例 
 Debug.Log("IFの前"); 
 if( a == 1 ){ 
 Debug.Log("aは1"); 
 } 
 Debug.Log("aは1ではない"); 
 Debug.Log("IFの後"); 
  
 これを実行すると「a = 1」の時は 
 "IFの前"、"aは1"、"aは1ではない"、"IFの後" 
 と4つ表示されます。 
 "aは1ではない"が不要です。 
  
 "else節"を使う事で次のようにできます。 
  
 例 
 Debug.Log("IFの前"); 
 if( a == 1 ){ 
 Debug.Log("aは1"); 
 } else { 
 Debug.Log("aは1ではない"); 
 } 
 Debug.Log("IFの後"); 
  
 これを実行すると「a = 1」の時は"IFの前"、"aは1"、"IFの後"と3つ表示されます。 
 「a = 1」ではない時は"IFの前"、"aは1ではない"、"IFの後"と3つ表示されます。 
 理想的な結果です。 
373: 2017/11/23(木)21:05 ID:8VVO/uAT(5/7) AAS
 最後に「if〜else if」を説明します。 
 else節の後にさらにifを使い条件判定(分岐)をさせる事が出来ます。 
  
 例 
 if( a == 1 ){ 
 Debug.Log("aは1"); 
 } else if( a == 2 ){ 
 Debug.Log("aは2"); 
 } else if( a == 3 ){ 
 Debug.Log("aは3"); 
 } else { 
 Debug.Log("aは1でも2でも3でもない"); 
 } 
 Debug.Log("IFの後"); 
  
 例えば「a = 1」の時は十字キーの左を押した時の処理を、 
 「a = 2」の時は十字キーの右を押した時の処理を、 
 「a = 3」の時は十字キーの下を押した時の処理を行い時などに使うことができる書き方です。 
  
 if文の章は以上です。 
 ここまでで貴方はif文の使い方はほぼマスターしています。 
 ほとんどの条件をあなたは実現できることでしょう。 
  
 わかったかクソども 
374: 2017/11/23(木)21:06 ID:8VVO/uAT(6/7) AAS
 誤字は愛嬌だ 
 わかったかクソども 
375(2): 2017/11/23(木)21:08 ID:W9y7pNcP(1/2) AAS
 ライティングについて教えてください 
 android端末をターゲットとしています。 
 密室で壁や天井をある程度明るく照らしたいのですが、結果としては「VR脱出ゲーム2」Blacksmith DoubleCircleさんが作っているような感じにしたいのです。 
 Directional lightを上からと下からと照らす方法を考えたのですが、他に何か良い方法はありますか? 
 ポイントライトですと、壁や天井の反射がきつい感じです。 
376: 2017/11/23(木)21:27 ID:KgDCdD6L(1) AAS
 アンビエントライトを付けろよ。 
上下前次1-新書関写板覧索設栞歴
あと 626 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.014s