フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。 プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他
■注意事項
特になし
■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
・http://www24.atwiki.jp/unity2ch/
●リンク
・Unity(日本公式サイト)
http://unity3d.com/jp
・マニュアル
http://docs.unity3d.com/ja/current/Manual/index.html
・チュートリアル
http://unity3d.com/jp/learn/tutorials
・スクリプトリファレンス
http://docs.unity3d.com/ja/current/ScriptReference/index.html
・FAQ
http://unity3d.com/jp/unity/faq
・MSDN
http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
前スレ
【ゲームエンジン】Unityなんでも質問スレpart4
https://mevius.5ch.net/test/read.cgi/gamedev/1619223275/
【ゲームエンジン】Unityなんでも質問スレpart5
■ このスレッドは過去ログ倉庫に格納されています
1名前は開発中のものです。
2021/08/27(金) 19:13:24.68ID:p8CMd57b2021/09/01(水) 20:06:35.46ID:ZfGOzjXf
2021/09/01(水) 20:56:25.77ID:mHIebA3r
シェーダーでカメラ位置を利用するならビルトインシェーダー関数から引っ張って来たほうが良いんでは?
C#側のカメラとシェーダー側カメラは座標が同じではないかもしれん
C#側のカメラとシェーダー側カメラは座標が同じではないかもしれん
36名前は開発中のものです。
2021/09/02(木) 03:56:56.68ID:PSew7ma3 GetKeyでupにしてるのに下に行っちゃうんですけどなんでかわかりますか?
37名前は開発中のものです。
2021/09/02(木) 04:21:37.07ID:6ItE3Go+ Space押したのに弾出ないと思ったら日本語じゃダメなのか...
38名前は開発中のものです。
2021/09/02(木) 08:02:02.11ID:QRjL/PRZ >>36
増減値が逆なんだろ。
増減値が逆なんだろ。
2021/09/02(木) 12:11:23.44ID:8EDFDo/6
パッドの十字キーだけ逆らしいぞ
40名前は開発中のものです。
2021/09/02(木) 18:04:55.44ID:De9iV2yN クソゲー作るぞ!
41名前は開発中のものです。
2021/09/02(木) 18:37:24.14ID:fFLzG+vu スクリプトを作る際ってコピペしちゃってもいいんですか?
それとも一回じぶんで全部打ち込んだ方がいいのかな
それとも一回じぶんで全部打ち込んだ方がいいのかな
42名前は開発中のものです。
2021/09/02(木) 18:41:17.74ID:MzTWK1s2 ベーマガかよw
43名前は開発中のものです。
2021/09/02(木) 18:57:15.45ID:X8IQsmrz え?書籍とか見ながら自分で打ち込むだろ最初は。
そのうちコピペしかしなくなるけど
そのうちコピペしかしなくなるけど
44名前は開発中のものです。
2021/09/02(木) 21:03:30.04ID:MzTWK1s2 >>43
コピペしちゃっても、からの、自分で打ち込んで、って言ってるからデジタル書籍の扱いをどうするかでしょ。
コピペしちゃっても、からの、自分で打ち込んで、って言ってるからデジタル書籍の扱いをどうするかでしょ。
2021/09/03(金) 04:48:56.84ID:LGIFZOLo
46名前は開発中のものです。
2021/09/03(金) 07:56:06.02ID:bay2tjkn メッシュ描画したいならdrawmeshじゃダメなん?
2021/09/03(金) 14:37:44.36ID:6loRjXu+
シェーダーの書き方が間違ってるのに、コードもなしにどうしてでしょうかって言われてもw
2021/09/03(金) 18:31:33.35ID:LGIFZOLo
>>47 描画用シェーダだけだと、今は最もプリミティブなものを作っているのでこんな感じです。
vs_out vert (uint id : SV_VERTEXID)
{
Out.pos = float4(float3(tubeBuffer[id]), 1);
return Out;
}
[maxvertexcount(128)]
void geom (point vs_out input[1], inout TriangleStream<gs_out> outStream)
{
gs_out o;
float4 pos = input[0].pos;
o.pos = pos;
outStream.Append(o);
}
fixed4 frag (gs_out In) : COLOR
{
return _Color;
}
vs_out vert (uint id : SV_VERTEXID)
{
Out.pos = float4(float3(tubeBuffer[id]), 1);
return Out;
}
[maxvertexcount(128)]
void geom (point vs_out input[1], inout TriangleStream<gs_out> outStream)
{
gs_out o;
float4 pos = input[0].pos;
o.pos = pos;
outStream.Append(o);
}
fixed4 frag (gs_out In) : COLOR
{
return _Color;
}
2021/09/03(金) 18:34:05.75ID:LGIFZOLo
計算は、コンピュートシェーダーでやっています。
_Origin_x, _Origin_y, _Origin_z
は、予めC#の方で計算しておいた、カメラのワールド座標とベクトルから求めた、カメラから一定の距離にある、カメラ正面の座標です。
[numthreads(64,1,1)]
void tubeAl (uint id : SV_DispatchThreadID)
{
float3 position;
for (int i = 0; i < 16; i++)
{
float radius = 1.0 + (0.5 * i);
for(int j = 0; j < 7 + (6 * i); j++)
{
float a = radius * cos(j * 0.785 * (1 / (i + 1 )));
float b = radius * sin(j * 0.785 * (1 / (i + 1 )));
position.x = a + _Origin_x;
position.y = b + _Origin_y;
position.z = _Origin_z;
}
}
tubeBuffer[id] = position;
}
_Origin_x, _Origin_y, _Origin_z
は、予めC#の方で計算しておいた、カメラのワールド座標とベクトルから求めた、カメラから一定の距離にある、カメラ正面の座標です。
[numthreads(64,1,1)]
void tubeAl (uint id : SV_DispatchThreadID)
{
float3 position;
for (int i = 0; i < 16; i++)
{
float radius = 1.0 + (0.5 * i);
for(int j = 0; j < 7 + (6 * i); j++)
{
float a = radius * cos(j * 0.785 * (1 / (i + 1 )));
float b = radius * sin(j * 0.785 * (1 / (i + 1 )));
position.x = a + _Origin_x;
position.y = b + _Origin_y;
position.z = _Origin_z;
}
}
tubeBuffer[id] = position;
}
2021/09/03(金) 18:37:08.93ID:LGIFZOLo
法線等考慮していないので、もし形成できたとしてもカメラに向かって円状にはなりませんが、
今はとにかくカメラの移動に伴ってメッシュが生成されていけば
今はとにかくカメラの移動に伴ってメッシュが生成されていけば
2021/09/03(金) 18:38:05.81ID:LGIFZOLo
OK、という段階です。
C#の方は、多分問題なくコンピュートシェーダーの初期化、バッファの宣言、初期化、ディスパッチや描画命令等出来ていると思います。
C#の方は、多分問題なくコンピュートシェーダーの初期化、バッファの宣言、初期化、ディスパッチや描画命令等出来ていると思います。
2021/09/03(金) 18:45:02.87ID:LGIFZOLo
あとフラグメントシェーダですが、シェーダのプロパティで
Properties{
_Color ("Color", Color) = (1,1,1,1)
}
を差し当たり直に設定しています。
Properties{
_Color ("Color", Color) = (1,1,1,1)
}
を差し当たり直に設定しています。
53名前は開発中のものです。
2021/09/03(金) 19:08:19.48ID:bay2tjkn コンピュートシェーダとか専門的なことはわからんけどメッシュの描画はdrawmeshでやって
シェーダーの処理はマテリアルで渡してあげたらダメなの?
そっちの方がカメラの位置とかやりやすいんじゃね
しらんけど
シェーダーの処理はマテリアルで渡してあげたらダメなの?
そっちの方がカメラの位置とかやりやすいんじゃね
しらんけど
2021/09/03(金) 19:15:20.16ID:LGIFZOLo
>>53
そうですね、GPUベースでやってみたかったですし、できるはずだと思いますが、
大量のパーティクルと違ってそこまで処理も重くないでしょうから、C#の方でメッシュ形成した方が、結局は早いかも知れませんね。
そうですね、GPUベースでやってみたかったですし、できるはずだと思いますが、
大量のパーティクルと違ってそこまで処理も重くないでしょうから、C#の方でメッシュ形成した方が、結局は早いかも知れませんね。
2021/09/03(金) 19:47:31.54ID:Sst/B9Re
Unityを日々勉強していて、何故、学生時代にいろんな小説や歴史を読んだり
数学や物理学をもっとしっかり学ばなかったんだろうと涙が溢れ出た
後悔先に立たず
数学や物理学をもっとしっかり学ばなかったんだろうと涙が溢れ出た
後悔先に立たず
56名前は開発中のものです。
2021/09/03(金) 21:28:51.62ID:bay2tjkn >>54
多分知ってると思うけど、DrawMeshInstancedだとバッチング減らせるらしいよ
多分知ってると思うけど、DrawMeshInstancedだとバッチング減らせるらしいよ
2021/09/03(金) 22:49:56.20ID:6loRjXu+
float3 worldPos = UnityObjectToClipPos(float4(v.vertex.xyz, 1) + float4( ( _WorldSpaceCameraPos.xy) , 0 , 0) ).xyz;
o.vertex = float4(worldPos, 1) ;
コンピュート抜きに常にカメラど真ん中に表示されるオブジェクトをシェーダーで描くならこれでできたけど
シェーダー入れてるオブジェクトのワールドZが999じゃないといけなかったり、カメラ回転すると外れたりする。
もっと複雑な計算が必要な印象。ググっても出てこないのでわからない。
カメラにオブジェクトを親子付して、カメラが動くとシェーダーを更新するスクリプト書いた方が早そう
o.vertex = float4(worldPos, 1) ;
コンピュート抜きに常にカメラど真ん中に表示されるオブジェクトをシェーダーで描くならこれでできたけど
シェーダー入れてるオブジェクトのワールドZが999じゃないといけなかったり、カメラ回転すると外れたりする。
もっと複雑な計算が必要な印象。ググっても出てこないのでわからない。
カメラにオブジェクトを親子付して、カメラが動くとシェーダーを更新するスクリプト書いた方が早そう
2021/09/04(土) 08:12:11.34ID:mpxWyr/l
2021/09/04(土) 08:17:56.83ID:mpxWyr/l
貼っていただいた実装も試みたのですが、最初の1フレームに描写されるだけで、
カメラの座標を変えても、新しくメッシュが形成されないのです。
カメラの座標を変えても、新しくメッシュが形成されないのです。
2021/09/04(土) 08:34:02.52ID:mpxWyr/l
[maxvertexcount(128)]
void geom (point v2g input[1], inout TriangleStream<g2f> outStream)
{
g2f o;
UNITY_INITIALIZE_OUTPUT(g2f, o);
float4 pos = input[0].vertex;
for (int i = 0; i < 16; i++)
{
float radius = 1.0 + (0.5 * i);
for(int j = 0; j < 6 + (6 * i); j++)
{
float a = radius * cos(j * 0.785 * (1 / (i + 1 )));
float b = radius * sin(j * 0.785 * (1 / (i + 1 )));
pos.x = a + pos.x ;
pos.y = b + pos.y;
pos.z = SimplexNoise(pos.z);
o.pos = UnityObjectToClipPos(pos);
//o[i].col = input[0].colWorld;
outStream.Append(o);
}
}
}
今だとこんな感じです。
特にRestartStripしていません。
void geom (point v2g input[1], inout TriangleStream<g2f> outStream)
{
g2f o;
UNITY_INITIALIZE_OUTPUT(g2f, o);
float4 pos = input[0].vertex;
for (int i = 0; i < 16; i++)
{
float radius = 1.0 + (0.5 * i);
for(int j = 0; j < 6 + (6 * i); j++)
{
float a = radius * cos(j * 0.785 * (1 / (i + 1 )));
float b = radius * sin(j * 0.785 * (1 / (i + 1 )));
pos.x = a + pos.x ;
pos.y = b + pos.y;
pos.z = SimplexNoise(pos.z);
o.pos = UnityObjectToClipPos(pos);
//o[i].col = input[0].colWorld;
outStream.Append(o);
}
}
}
今だとこんな感じです。
特にRestartStripしていません。
61名前は開発中のものです。
2021/09/04(土) 13:00:35.84ID:uilkUsx1 いきなり失礼します
超初心者なのですが
if (Input.GetMouseButton(0))
{
○○○○
}
だとマウスのボタンを押してるときに○○○○を実行すると思うのですが、ボタンを押してないときに○○○○を実行したときはどういう風に書いたらいいでしょうか…?
超初心者なのですが
if (Input.GetMouseButton(0))
{
○○○○
}
だとマウスのボタンを押してるときに○○○○を実行すると思うのですが、ボタンを押してないときに○○○○を実行したときはどういう風に書いたらいいでしょうか…?
2021/09/04(土) 13:16:31.62ID:4s/Kvr8z
InputGetButtonUpか
毎フレーム行われていいならelseでよいのでは
毎フレーム行われていいならelseでよいのでは
63名前は開発中のものです。
2021/09/04(土) 13:22:23.54ID:uilkUsx12021/09/04(土) 14:15:39.51ID:KuP8pcA2
>>60
UnityObjectToClipPosはv2g vert(appdata v)?内に書かないといけない
UnityObjectToClipPosはv2g vert(appdata v)?内に書かないといけない
65名前は開発中のものです。
2021/09/04(土) 17:50:05.06ID:9nO9+S2f ゲームマネージャーの仕組みがわからないよぉ
2021/09/05(日) 03:41:25.98ID:UhGmA0IN
67名前は開発中のものです。
2021/09/05(日) 09:41:33.52ID:RWBX860i 質問します
今Androidアプリを作ってていよいよストアに申請しようという段になりました
ここで必要になるのがアプリのアイコン画像やフィーチャー画像ということになります
これらの画像を作る時ゲーム中のスクリーンショットを使いたいのですが
unityのアセットってスクリーンショット化をしてストアで使っていいものなのでしょうか?
今Androidアプリを作ってていよいよストアに申請しようという段になりました
ここで必要になるのがアプリのアイコン画像やフィーチャー画像ということになります
これらの画像を作る時ゲーム中のスクリーンショットを使いたいのですが
unityのアセットってスクリーンショット化をしてストアで使っていいものなのでしょうか?
68名前は開発中のものです。
2021/09/05(日) 14:26:13.10ID:RWBX860i 質問です
今Androidアプリのビルドをしててapi level30にしてビルドするのに手間取っています
本アプリでAndroid SDKのアップデートがうまく行かないので空のプロジェクトで
実験することにしました
空のプロジェクトでビルドをAndroidに変えてターゲットAPIを30にしてビルドしました
そうしたら「sdkをアップデートしますか?」というダイアログが出てきて
okを押したところ次のようなエラーで終了してしまいました
https://i.imgur.com/UgYyWP3.png
Android sdkを30にアップデートする簡単な方法はないでしょうか?
Android studioを今はインストールしていません
今Androidアプリのビルドをしててapi level30にしてビルドするのに手間取っています
本アプリでAndroid SDKのアップデートがうまく行かないので空のプロジェクトで
実験することにしました
空のプロジェクトでビルドをAndroidに変えてターゲットAPIを30にしてビルドしました
そうしたら「sdkをアップデートしますか?」というダイアログが出てきて
okを押したところ次のようなエラーで終了してしまいました
https://i.imgur.com/UgYyWP3.png
Android sdkを30にアップデートする簡単な方法はないでしょうか?
Android studioを今はインストールしていません
69名前は開発中のものです。
2021/09/05(日) 15:24:31.35ID:RWBX860i70名前は開発中のものです。
2021/09/05(日) 15:30:01.99ID:ryvtC8Yy 質問です
GameObject A = 「○○の範囲にあるオブジェクト」
としたいとき、「」の中はどういう風に表現したらよいでしょうか?
GameObject A = 「○○の範囲にあるオブジェクト」
としたいとき、「」の中はどういう風に表現したらよいでしょうか?
71名前は開発中のものです。
2021/09/05(日) 15:47:00.77ID:RWBX860i2021/09/05(日) 17:07:53.16ID:BHbWJBb7
VROID→Blender(cats処理後改造してfbx)→Unity(vrm化済み)に持ち込んだヒューマイノイドタイプのオブジェクトの質問です
シーンには上記のヒューマノイドと地面のplaneオブジェクトだけです
ヒューマノイドの足を短くすると宙に浮きます
そこでヒューマノイドのポジションのY軸を調整して接地させてみましたが、シーンビューでは接地しててもゲームプレイ画面では浮いてしまいます。
試しにplaneのポジションを上げて接地させてみましたが、やはりゲームプレイ画面では浮きます。
どうすれば接地させることができるのでしょうか?
ググってみると導入モデルのInspectorのConfigureからHipsボーン(ルートボーン)のポジションを変える解決法が乗っていますが
なぜか当方のプロジェクトでは導入したモデルvrmが喪失しておりいじることができません
いままで行った処理は
・fbxのヒューマノイド設定やマテリアル・シェーダー指定でvrm出力後、vrm読み込みしシェイプシフター設定
・ダイナミックボーンによる髪の毛やスカート揺れ設定
・メッシュスプリッターでメッシュをマテリアルごとに
・マジカメッシュクロスで2重スカートのクロス設定
・足を含むAmatureのサイズ変更
以上となります
シーンには上記のヒューマノイドと地面のplaneオブジェクトだけです
ヒューマノイドの足を短くすると宙に浮きます
そこでヒューマノイドのポジションのY軸を調整して接地させてみましたが、シーンビューでは接地しててもゲームプレイ画面では浮いてしまいます。
試しにplaneのポジションを上げて接地させてみましたが、やはりゲームプレイ画面では浮きます。
どうすれば接地させることができるのでしょうか?
ググってみると導入モデルのInspectorのConfigureからHipsボーン(ルートボーン)のポジションを変える解決法が乗っていますが
なぜか当方のプロジェクトでは導入したモデルvrmが喪失しておりいじることができません
いままで行った処理は
・fbxのヒューマノイド設定やマテリアル・シェーダー指定でvrm出力後、vrm読み込みしシェイプシフター設定
・ダイナミックボーンによる髪の毛やスカート揺れ設定
・メッシュスプリッターでメッシュをマテリアルごとに
・マジカメッシュクロスで2重スカートのクロス設定
・足を含むAmatureのサイズ変更
以上となります
2021/09/05(日) 18:46:21.26ID:AW+7mbmL
同じシーンテンプレートから作成したシーンの一つに変更を加えると、その他のシーンにも反映されてしまうのですが、これは仕様でしょうか?
他のシーンには反映されないようにする方法も教えて頂けると嬉しいです。
他のシーンには反映されないようにする方法も教えて頂けると嬉しいです。
2021/09/05(日) 19:21:02.97ID:CbOnRBVt
オープンワールドゲームみたいな広大なマップを作るとき
ヒエラルキーがものすごい数になって分かりにくくなるんですが
これは頑張って管理しないといけないんでしょうか
ヒエラルキーがものすごい数になって分かりにくくなるんですが
これは頑張って管理しないといけないんでしょうか
2021/09/05(日) 19:45:36.34ID:rNGz2Hxf
76名前は開発中のものです。
2021/09/05(日) 20:12:23.35ID:mOtP5aKb >>68
コンソールからAPIー30取って来て使ってるUnityバージョンのAndroidengineフォルダのプラットフォームフォルダに置けば通せるよ
コンソールからAPIー30取って来て使ってるUnityバージョンのAndroidengineフォルダのプラットフォームフォルダに置けば通せるよ
2021/09/05(日) 20:54:58.88ID:RWBX860i
2021/09/06(月) 01:16:26.89ID:xpf1Rk4L
79名前は開発中のものです。
2021/09/06(月) 11:29:48.52ID:o0Omy+ef80名前は開発中のものです。
2021/09/06(月) 14:11:27.63ID:Lkt7e4IY ある程度の位置に来たらシーン合成とかで管理すれば
2021/09/06(月) 18:13:35.33ID:tj7E+ylM
ひどく初歩的な質問で申し訳ありません
タイムラインでヒューマノイドオブジェクトをMixamoでダウンロードしたwalkやrunのfbxを使って移動させるアニメーションを組みたいのですが、
ヒューマノイドオブジェクトがその場で足踏みして移動しません。
どうすれば移動させられますか?
タイムラインでヒューマノイドオブジェクトをMixamoでダウンロードしたwalkやrunのfbxを使って移動させるアニメーションを組みたいのですが、
ヒューマノイドオブジェクトがその場で足踏みして移動しません。
どうすれば移動させられますか?
2021/09/06(月) 19:07:16.20ID:xpf1Rk4L
83名前は開発中のものです。
2021/09/06(月) 19:11:44.81ID:MV+9GB6N84名前は開発中のものです。
2021/09/06(月) 22:00:30.40ID:I2NTygQ0 >>81
まずUnityのアニメーターのApply Root Motionを理解してからの方がいいかも
まずUnityのアニメーターのApply Root Motionを理解してからの方がいいかも
85名前は開発中のものです。
2021/09/07(火) 04:23:23.50ID:p7zX6a/Y インスペクターにOnClickイベントが表示されないのですが解決法わかりますか?
86名前は開発中のものです。
2021/09/07(火) 04:34:25.32ID:dhAJ3i3B すみません解決しました
2021/09/07(火) 11:43:03.68ID:lngHOnsy
2021/09/08(水) 05:13:48.17ID:HhX017v4
>>33
もう質問主も寝かせてる話なのかとは思うけど、これメッシュ生成し続けるって上限とかないの?
あってジオメトリシェーダー使うならテクスチャバッファにリングバッファ的にポジションCPUでかいてそれを元にジオメトリシェーダーでモニョモニョすればと思うました
もう質問主も寝かせてる話なのかとは思うけど、これメッシュ生成し続けるって上限とかないの?
あってジオメトリシェーダー使うならテクスチャバッファにリングバッファ的にポジションCPUでかいてそれを元にジオメトリシェーダーでモニョモニョすればと思うました
89名前は開発中のものです。
2021/09/08(水) 19:49:20.75ID:svnqeWoz ブログとかでUnityの解説してて分かりやすくて
その人が出してるアプリを見に行くと
DL数も少なくてとてもヒットしそうになくて
ちょっとびっくりということが結構あるな
ああいう人は受託で稼げてるから
アプリは自分の趣味に特化してるとかかな
その人が出してるアプリを見に行くと
DL数も少なくてとてもヒットしそうになくて
ちょっとびっくりということが結構あるな
ああいう人は受託で稼げてるから
アプリは自分の趣味に特化してるとかかな
2021/09/08(水) 20:32:19.47ID:E9pnqJxx
仕事と趣味でしているのって違うよね
俺はちっともゲームは作れないけど一部分に関してはいろいろ頑張って理解できたので解説サイト作ってみたいと考えてしまう
もし俺がバリバリに現役売れっ子ゲームクリエイターなら解説なんて他方でやってられないとか手間のかかることうんざりだよ
たとえば仕事で通訳している現役バリバリ英語できるひとが只でゲーム開発を和訳してくれるわけがなく
英語わかんないやつが必死こいて翻訳してたりSNSで他人に教えてあげたりしている
そんな感じだよ
という俺の持論
俺はちっともゲームは作れないけど一部分に関してはいろいろ頑張って理解できたので解説サイト作ってみたいと考えてしまう
もし俺がバリバリに現役売れっ子ゲームクリエイターなら解説なんて他方でやってられないとか手間のかかることうんざりだよ
たとえば仕事で通訳している現役バリバリ英語できるひとが只でゲーム開発を和訳してくれるわけがなく
英語わかんないやつが必死こいて翻訳してたりSNSで他人に教えてあげたりしている
そんな感じだよ
という俺の持論
2021/09/09(木) 07:33:02.20ID:3HZ1vFNV
プログラミング技術と面白いゲームを作る技術は全く別物じゃん。
ピアノ習ったら全員作曲家になれるの?って話。
ピアノ習ったら全員作曲家になれるの?って話。
2021/09/09(木) 08:40:16.07ID:MK0Q4A21
>>91
正論やな
正論やな
2021/09/09(木) 13:15:36.11ID:AdVsFyJh
気が強くてプログラミングでマウントしてくる職場の人が
個人で出してるゲームをプレイストアでダウンロードしたけど
微妙だった
個人で出してるゲームをプレイストアでダウンロードしたけど
微妙だった
94名前は開発中のものです。
2021/09/09(木) 13:29:43.60ID:cgru5Bh9 ゲームの面白さはプランナーの仕事だからな、プログラミングが凄くても面白さには比例しないし
ある程度ストレスなくプレイできるなって思われるだけで
ある程度ストレスなくプレイできるなって思われるだけで
2021/09/09(木) 13:33:03.93ID:ZgyA5AvK
そりゃそうだろ
プログラマーなんて建設現場の土方といっしょ
決して建築家にはなれない
プログラマーなんて建設現場の土方といっしょ
決して建築家にはなれない
2021/09/09(木) 13:55:42.26ID:ljl/wd4k
最低でもプログラマーの常識、可能なら一端のプログラマーでないとシステムエンジニアにはなれんぞ
下を理解してないやつが上に立つことなどできない
将来エンジニアになりたいならプログラマーになることは俺は必要だし無駄ではないと思う
下を理解してないやつが上に立つことなどできない
将来エンジニアになりたいならプログラマーになることは俺は必要だし無駄ではないと思う
2021/09/09(木) 18:23:12.94ID:3HZ1vFNV
無駄かどうかって話じゃなくね
2021/09/09(木) 18:37:04.68ID:xAN09TPv
プログラマーが建築家(エンジニア、デザイナー)になれないって言うからんなわけねーだろって言ってるだけだろ
2021/09/09(木) 18:37:08.72ID:JOhyguQB
結局個人制作なら本人のセンスによるんだよな
職業がどうとかは関係ない
自称元ゲームプランナーの無職が作ったゲームが面白いとは限らないし
職業がどうとかは関係ない
自称元ゲームプランナーの無職が作ったゲームが面白いとは限らないし
100名前は開発中のものです。
2021/09/09(木) 18:52:10.18ID:YtpvGyxn >95は定義がいろいろ謎だな
プログラマをカースト最下級だと揶揄するのは分からなくはないが
肉体労働者はホワイトカラーになれない的なニュアンスなら
プログラマに関しては的外れじゃないかな?
どっかから連れてきた天下りの門外漢が管理職になっても
何もできない木偶にしかならんだろ
プログラマをカースト最下級だと揶揄するのは分からなくはないが
肉体労働者はホワイトカラーになれない的なニュアンスなら
プログラマに関しては的外れじゃないかな?
どっかから連れてきた天下りの門外漢が管理職になっても
何もできない木偶にしかならんだろ
101名前は開発中のものです。
2021/09/09(木) 20:14:39.82ID:RaqSITdl スクリプトA
public static class A
{
public struct B
{
public float c;
}
}
スクリプトD
public class D
{
void UpDate()
{
float e = A.B.c;
}
}
スクリプトDのeにスクリプトAのcを代入したいのですが、代入する行でcs0120のエラーが出てしまいます。
どうすれば代入出来ますか?
スクリプトAはGitHubから導入したスクリプトなので変えられません。
public static class A
{
public struct B
{
public float c;
}
}
スクリプトD
public class D
{
void UpDate()
{
float e = A.B.c;
}
}
スクリプトDのeにスクリプトAのcを代入したいのですが、代入する行でcs0120のエラーが出てしまいます。
どうすれば代入出来ますか?
スクリプトAはGitHubから導入したスクリプトなので変えられません。
102名前は開発中のものです。
2021/09/09(木) 20:43:35.24ID:jpCh8LST public static float c;
staticクラスの変数はstaticで宣言するとOK
staticクラスの変数はstaticで宣言するとOK
103名前は開発中のものです。
2021/09/09(木) 20:50:13.07ID:3HZ1vFNV スクリプトAは変更できないって前提では?
104名前は開発中のものです。
2021/09/09(木) 20:51:03.37ID:jpCh8LST 変えればOK
105名前は開発中のものです。
2021/09/09(木) 20:51:38.82ID:3HZ1vFNV 変えれないって前提では?
106名前は開発中のものです。
2021/09/09(木) 20:53:36.16ID:xAN09TPv コントか?
107名前は開発中のものです。
2021/09/09(木) 21:00:18.91ID:jpCh8LST 変えられないほど底辺ならインスタンス化すればOK
108名前は開発中のものです。
2021/09/09(木) 21:12:06.73ID:7NvRTw1V インスタンスの無い変数の値を受け取れるわけ無い
宣言しているだけで存在しない変数なんだから
宣言しているだけで存在しない変数なんだから
109名前は開発中のものです。
2021/09/09(木) 21:12:07.61ID:RaqSITdl110名前は開発中のものです。
2021/09/09(木) 21:17:06.41ID:7NvRTw1V 変えられないとなると難しい
俺にはわからん
よく見るとAはスタティックなのか
でもBはインスタンスどうなっているんだ
俺にはわからん
よく見るとAはスタティックなのか
でもBはインスタンスどうなっているんだ
111名前は開発中のものです。
2021/09/09(木) 23:14:57.48ID:DkN/DjRB ユー、変えちゃいなよ!
112名前は開発中のものです。
2021/09/09(木) 23:46:24.62ID:eBBeKhK/ わざわざクラスや変数staticにせんでも
static関数作って値返せばいんじゃね
static関数作って値返せばいんじゃね
113名前は開発中のものです。
2021/09/09(木) 23:47:05.46ID:eBBeKhK/ あ、いや変数もstaticだ
114名前は開発中のものです。
2021/09/10(金) 07:54:37.91ID:tB+Td/Tq115名前は開発中のものです。
2021/09/10(金) 07:57:45.45ID:4dX6AStO まあスクリプトだろうとなんだろうと変えられないはずはないからね……
116名前は開発中のものです。
2021/09/10(金) 07:58:46.78ID:AZowF18M そもそもUnity関係ないところもコント感ある
117名前は開発中のものです。
2021/09/10(金) 09:40:34.69ID:MoID+ieY インスタンスにしないのとアクティブにしないのとでは
どういう違いがあるんですか
どういう違いがあるんですか
118名前は開発中のものです。
2021/09/10(金) 10:18:15.97ID:Vrqrsvlj 実体化しないのと有効にしないのとでは
どういう相違点があるのか?→相違点しかないのでは?
どういう相違点があるのか?→相違点しかないのでは?
119名前は開発中のものです。
2021/09/10(金) 12:05:58.85ID:cEznrE1I120名前は開発中のものです。
2021/09/10(金) 12:09:18.95ID:cEznrE1I >>119
別にやり方を強制している訳じゃないよ
別にやり方を強制している訳じゃないよ
121名前は開発中のものです。
2021/09/10(金) 12:27:14.67ID:OdLnlLsa Unityの習得度(プログラマー向け)をレベル分けしてみたけどこんな感じかな(だいぶザックリしてるけど)
入門レベル
・本とかネット見ながらUnityの基本操作ができる
・球転がしとか作れる
初級者
・簡単なゲーム(2Dシューティングとか)なら一人で作れる
中級者
・大体の思い描いたゲームが作れる
・この辺りからEditor拡張にハマり始める
上級者
・Editor拡張等を用いて大体の思い描いた開発支援ツールを作れる
・Unityのこと質問したら大体答えが返ってくる。歩くリファレンスと化している
賢人
・Storeに売り出した自作アセットが多くの人に利用されている
・Unityに関する書籍を出版している
神
・Unityの中の人で、エンジンの開発に携わっている
・自作アセットがUnityの標準機能として搭載された
入門レベル
・本とかネット見ながらUnityの基本操作ができる
・球転がしとか作れる
初級者
・簡単なゲーム(2Dシューティングとか)なら一人で作れる
中級者
・大体の思い描いたゲームが作れる
・この辺りからEditor拡張にハマり始める
上級者
・Editor拡張等を用いて大体の思い描いた開発支援ツールを作れる
・Unityのこと質問したら大体答えが返ってくる。歩くリファレンスと化している
賢人
・Storeに売り出した自作アセットが多くの人に利用されている
・Unityに関する書籍を出版している
神
・Unityの中の人で、エンジンの開発に携わっている
・自作アセットがUnityの標準機能として搭載された
122名前は開発中のものです。
2021/09/10(金) 15:57:29.41ID:Gfu2twQX リア中
・unityなんて、何それうまいの?
・結婚して子育て、年収800万以上
・unityなんて、何それうまいの?
・結婚して子育て、年収800万以上
123名前は開発中のものです。
2021/09/10(金) 16:49:05.50ID:ikshz76a124123
2021/09/10(金) 19:50:40.01ID:ikshz76a なんかミス
ありがとうございます
インスタンスしてあるとアクティブになってなくても
メモリは消費してるってことですね
ありがとうございます
インスタンスしてあるとアクティブになってなくても
メモリは消費してるってことですね
125名前は開発中のものです。
2021/09/10(金) 22:11:01.23ID:UOSQuWkZ 失礼します。c#とウニティ初学者です。
皆様はコンテナクラスのコピーはどうやって実装されてますか?
コピー代入だとシャロコピーにしかならないんですよね?
私は敵クラスを格納するコンテナを作り、そこで一括に敵を管理しております。
そこで、とあるリストenem_1から別なとあるリストally_1に敵をまるっと移したい。
そういった場合にディープコピーで実装したい次第であります。
敵はInstantiate関数で実体化させたMonobehavior継承プレハブクローンで、enem_1は再利用する予定です。
なのでenem_1をDestroyするかList.clear()したいのですが、その場合はディープコピーの方が良いですよね?
トンチンカンなことを聞いているかもしれませんがよろしくお願いします。
皆様はコンテナクラスのコピーはどうやって実装されてますか?
コピー代入だとシャロコピーにしかならないんですよね?
私は敵クラスを格納するコンテナを作り、そこで一括に敵を管理しております。
そこで、とあるリストenem_1から別なとあるリストally_1に敵をまるっと移したい。
そういった場合にディープコピーで実装したい次第であります。
敵はInstantiate関数で実体化させたMonobehavior継承プレハブクローンで、enem_1は再利用する予定です。
なのでenem_1をDestroyするかList.clear()したいのですが、その場合はディープコピーの方が良いですよね?
トンチンカンなことを聞いているかもしれませんがよろしくお願いします。
126名前は開発中のものです。
2021/09/10(金) 22:15:39.78ID:dhskHfd/ Unable to check errors listed in `Temp/ApiUpdater_CheckMovedFromd7eab44652aabb2458fea1d7810a4b6a`. File contents:
2697508544448
こんなかんじのエラーが出てきてしまったのですがこれはどういう意味なのでしょうか?
2697508544448
こんなかんじのエラーが出てきてしまったのですがこれはどういう意味なのでしょうか?
127名前は開発中のものです。
2021/09/10(金) 22:42:06.68ID:gyv6yBUw128名前は開発中のものです。
2021/09/10(金) 22:52:13.56ID:gyv6yBUw129名前は開発中のものです。
2021/09/10(金) 22:59:58.72ID:3ogDeoii ポインタ渡しただけだと実体の値が変わってしまうって事なんだろうけど
ScriptableObjectでいいような
ScriptableObjectでいいような
130名前は開発中のものです。
2021/09/10(金) 23:37:31.22ID:UOSQuWkZ >>129
これは初めて知った機能でした。
ありがとうございます。
しかし私が実装したい機能はポケモンの個体値を個別に設定するタイプなので、敵AIを記述するのには使えるかもしれませんが、各実態ごと移すのには向かないのではないだろうか……
皆さんディープコピーはしない感じなんでしょうか?
参照コンテナを保存する場合はどうやって範囲外の生存を担保しますか?
デストロイ使わない感じ?
書き出したいコンポーネントをリストからforeachで書き出して、実体化するときに再アタッチするのかな……?
これは初めて知った機能でした。
ありがとうございます。
しかし私が実装したい機能はポケモンの個体値を個別に設定するタイプなので、敵AIを記述するのには使えるかもしれませんが、各実態ごと移すのには向かないのではないだろうか……
皆さんディープコピーはしない感じなんでしょうか?
参照コンテナを保存する場合はどうやって範囲外の生存を担保しますか?
デストロイ使わない感じ?
書き出したいコンポーネントをリストからforeachで書き出して、実体化するときに再アタッチするのかな……?
131名前は開発中のものです。
2021/09/10(金) 23:47:55.59ID:0hasLUzi おそらくあなたがしたいことは、
各モンスター個体の能力値を個別に管理したいんだと思うけど、そうかな?
そしてそれを管理してるのが>>125の「敵クラスを格納するコンテナ」ってやつ?
そうなると、そのコンテナはクラスを格納してるんじゃなくて、
敵インスタンスの参照を保持してると思われます
C#の仕様ですと、数値のような一部のプリミティブな変数を除き、
通常のコピーではインスタンスへの参照がコピーされます
そして自動でガベージコレクションが走り、
参照が生きていればインスタンスも生き続け、参照を失うとインスタンスは解放されます
つまり、「敵クラスを格納するコンテナ」に参照を保存しおけば、
個別キャラとしてのデータ、つまりインスタンスは生存し続けます
C#の仕様です
補足情報としては、ガベージコレクションが走るタイミングは任意なので、
参照を失った瞬間に解放されるわけではない…はずです
各モンスター個体の能力値を個別に管理したいんだと思うけど、そうかな?
そしてそれを管理してるのが>>125の「敵クラスを格納するコンテナ」ってやつ?
そうなると、そのコンテナはクラスを格納してるんじゃなくて、
敵インスタンスの参照を保持してると思われます
C#の仕様ですと、数値のような一部のプリミティブな変数を除き、
通常のコピーではインスタンスへの参照がコピーされます
そして自動でガベージコレクションが走り、
参照が生きていればインスタンスも生き続け、参照を失うとインスタンスは解放されます
つまり、「敵クラスを格納するコンテナ」に参照を保存しおけば、
個別キャラとしてのデータ、つまりインスタンスは生存し続けます
C#の仕様です
補足情報としては、ガベージコレクションが走るタイミングは任意なので、
参照を失った瞬間に解放されるわけではない…はずです
132名前は開発中のものです。
2021/09/11(土) 00:09:35.53ID:rXFpArPO デフォルト値は持ちたいが個別にHPやLvの値は一次的に保持したい(シーン単位で)
という用途にはScriptableObjectは合致するよ(永続的な保存は出来ない)
コンテナはしらんけどC#のDB系は何か使いづらいんで
SQLiteに丸投げしてる
という用途にはScriptableObjectは合致するよ(永続的な保存は出来ない)
コンテナはしらんけどC#のDB系は何か使いづらいんで
SQLiteに丸投げしてる
133名前は開発中のものです。
2021/09/11(土) 00:22:29.84ID:X3KGMt+u >>131
ありがとうございます!
私のつたない説明でここまでクリティカルな返答されるとか、えすぱーか何か?
ガベージコレクションが実体の照会をし続けて、リファレンスが一個も無くなった場合以降に実体がdeleteされるのですね?!
それならば、任意のコンテナに参照を保持し続けていれば、実体が消去されることがないのでシャロコピーを使い回すことで十分ですね!
私の想定する使用法なら、コピーしたあとでforeachデストロイではなく、コンテナ.クリア()で移動元の配列を空にすればいいと思います。
私はc丼の初歩的な仕様もよくわかっておりませんでした。しかしこの件についてはあなたの説明で得心しました!
ありがとうございます。多謝!
ありがとうございます!
私のつたない説明でここまでクリティカルな返答されるとか、えすぱーか何か?
ガベージコレクションが実体の照会をし続けて、リファレンスが一個も無くなった場合以降に実体がdeleteされるのですね?!
それならば、任意のコンテナに参照を保持し続けていれば、実体が消去されることがないのでシャロコピーを使い回すことで十分ですね!
私の想定する使用法なら、コピーしたあとでforeachデストロイではなく、コンテナ.クリア()で移動元の配列を空にすればいいと思います。
私はc丼の初歩的な仕様もよくわかっておりませんでした。しかしこの件についてはあなたの説明で得心しました!
ありがとうございます。多謝!
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 小1の通知表を廃止、「自己肯定感が下がる」との意見受け…岐阜・美濃市 [少考さん★]
- 氷河期40代おじさんが人生初のファミマ店員バイト!パニックになった「呪文みたい」な注文とは? [煮卵★]
- 農水省、備蓄米の迅速な供給を要求 コメ価格高止まりで厳しい対応 全農「きちんと努力」 ★2 [蚤の市★]
- 【芸能】大久保佳代子 友人の子供に渡すお年玉は一律1000円 「芸能人のくせにセコイなと思われてるかもしれないけど…」 [冬月記者★]
- 【SNS】米、独を「専制政治」と批判 第2党AfDの極右団体認定で [少考さん★]
- 広末涼子が公表した病名 専門家「この2つの病気併発は珍しい」「重なったことでいろんな問題行動が…」 [ネギうどん★]
- 吉村はん「万博リングは閉幕後も600m保存するんや😤」記者「17億かかるけど誰が負担?」吉村はん「知らんがな!」 [359965264]
- 【ストーカー殺人事件】川崎警察署にデモ隊が突入、一触即発に [606757419]
- いつまでも立たない🏡
- 在阪メディアさん、大阪万博が大混雑してるように見せかけるために行列を『ズーム』してしまう・・・ [931948549]
- Z世代、ブチギレ「職場がホワイトすぎてキツイ。刺激がない」 [606757419]
- 大谷って自殺とか考えたことないだろうな