unityでゲーム作りたい(Help!)
師匠!
隣の庭には2羽鶏がいるのの例え通りで
大したことやってまふぇん! ビルドするとき保存先きかれて面倒だから適当に選んでしまった
どうやって変更すればいいの? ビルドセッテイングの「Build」か「BuildandRun」かどっちかで変えられないかなー ありがとう
メニューのFile>Build And Run
だと聞いてこないけど
メニューのFile>Build Setting...
からのBuildだと毎回聞いてくるってことなのか
謎が解けました 2Dで作業している初心者です
512ドットの画像を作成してエディターで配置したらものすごく小さくなりました
スケール16にしたらだいたい80ドットくらいの大きさになりました
どういうことなんでしょう
任意のドットサイズで表示させたいときはどうするのでしょうか スプライトの上下左右の座標を調べるのって
ググった見たらなんだか面倒な感じなのね
なんか印でもつけるかハードコーディングで済まそうと思う おっし動きが形になてきたー
https://imgur.com/yXjheKW
ま見てわかる通り単純な数合わせの暇つぶしゲーム
認知症予防にもうってつけな事間違いなし!
老人ホームに売り込むのだ!!!
くまじょさんはどんなゲームを作ってるのかなー? webGLがエラーになってできない
windowsの方はできた windowsの方はできたが
ファイル数が多いしサイズの大きいのもあって配布しにくいな webGLできたみたいだがクロムで実行できないのか ファイルサイズが大きいから
俺が借りてる無料スペースに置けない 公開したいとは思うが内容はひどいよ
どうやったr公開できるか後日考える 自分もいま作ってるの、一通り動くから公開しようとおもったら
スマホ用なんだけど、スマホでやったらめっちゃレイアウト崩れてたのだ
明日になりそうなり>< おっし!とりあえず動く
https://thuploader.orz.hm/miniup/?mode=dl&id=6687&original=1
passは1234
現在の所、スワイプで上か下のみの操作です
師匠!お暇なら是非やってみてください
難易度調整とかしてないから意外とむずいかもww 長年にわたり苦戦してきたunity 2Dでゲームができた
まだ多少不備があるので直す必要がある
平手を探せ
http://kmajo.starfree.jp/find-hirate/
タイトル画面にある画像と同じものを見つけてクリックするだけのゲーム windows版だと日本語や記号が表示されるけど
webGL版では出ないのね
3MB超えるファイルがあるのでサイトが消されたりしないか心配 WebGLっていうのを指定したんだけど俺のスマホのブラウザではサポートしていなかった
これはかなりがっかり
俺は10点くらい
何度もやってるからかな
運よくて12点
ステージが進むと回転とかしだすんだけどそこまで行くのは不可能なのかな どんな技術か知らんけど、データはむちゃくちゃちっさくなるねWebGL 画像512ドットで作ってしまったが小さくした方がよかったのかな
でも今更すべてのスケールを変更したくない 設定いじってたらビルドでエラーが出るようになってしまった おっし13点
https://i.gyazo.com/8b4b6adb9ad0220ee21c67cd04a520ac.png
この男の人って誰?
てか動物とか他の女性も誰かわらかんけどwだんだn慣れてきたから早くクリックできるようになった
画像512ドット っていうのは512*512って事?
PCでやるなら特にそれで大丈夫な感じだと思うけど、どうなんだろう・・・
何か不都合あるなら変えて見てもいいかと 平手を探せ
一応完成した
音無し
いつか効果音や音量設定とかも作りたいな
ゲームオーバーになったらskipボタンを消せばよかったな
6〜8点だった なんかカッチョイイフリーの毛筆フォントみっけて一気に画面がカッコよくなったw
https://i.gyazo.com/7e38d1a69ffe645c6bff01a1cdd4747a.png
こんな漢字
達筆かっこわらいって言うフォント セーブ機能はどうしようかなあ
ネット見たらレジストリ使うから自作するとかあった
まだ俺のレベルでは理解しきれない ゲームをどう作ったらいいのかがわからないなあ
例えばRPGだと移動(見下ろし)と戦闘(横から見てる)と店などで画面構成が変わるのがある
シーンていうやつを切り替えているの?
レイヤーとかUIとか複数をon/offしてるの?
今の俺にはRPGなんてつくれないけど
例えばの話 セーブはplayerPrefs でいいかと
画面の切り替えは規模にもよるけどシーン変えるのが作るのも楽だと思う unityで再生ボタンみたいな右向きの三角playを押したときはうまくいったのに
実行ファイルやwebGLを作って実行するとnullのエラーが出るようになってしまった
playではない場合のデバッグの仕方を調べなければ 原因はわかった
GameObjct.Findってアクティブなものしか見つけてくれないのね
そろそろ前回作ったやつの改造版が完成しそう 俺の作ったwebGLのゲーム
俺のスマホでは警告みたいなのがでるんだが
なんなんだこれ webGLだと日本語フォントデータを付けないと行けないのが解せない 60面とか100面とかあるような
ドルアーガの塔とかパズルゲームを作るときって
各面にシーンを使うと
各シーンに同じキャンバス(UIとスクリプト)を地道に用意していくものなの?
なんだか大変そう
UIに変更あったらすべてのシーンのUIの表示位置とか手直ししていくの?
スクリプトは同じの使うから手間かからなそう ベースシーン用意してadditive で読み込みすればいいと思うよ ネットで調べると別のシーンにはアクセスできないと書いてあった
シングルトンでフラグたてて、別シーンで監視して反応する方式になるのかな
アイテムゲットしたらイベントキューにプッシュ
UIがイベントキューをポップしてアイテムのアイコンを表示
みたいな具合に find してsend message すればアクセス可能よ
シーンを追加読み込みしたらゲーム上では同じシーン扱いだから send message じゃなくてもfind できるからgetcomponent も大丈夫だわ
何にせよアクセスは出来ますよ
注意するのはシーン読み込みのラグくらいかな、当然ながら読み込み終えてからfind しないと見つからない プログラムから色や透明度を変えようと思ったのだが
Mask.GetComponent<Renderer>().material.color
Mask.GetComponent<SpriteRenderer>().material.color
これだと
http://kmajo.starfree.jp/images/ss2020-03-19-00001.png
の上にあるSprite RendererのColorではなくて
下にあるSprites-DefaultのTintの色をget,setしてる
実際に表示される色は上のColorと下のTintの乗算したいろに
なってしまうので上のColorをプログラムでsetできるようにしたい
どうすればいいのでしょうか >>154
解決してしまった
ググった時にmaterial.colorとか出てきてうまくいかなくて試行錯誤してたんだけど
書き込みした後にmaterialではないcolorを見つけた 特定の描画にぼかしいれて光源みたいにしようかと思ったがわからん
ネットみたけどバージョンの違いなのか
該当するもの見当たらない
スクリプトを見かけたけどどこにそれを書けばいいのかわからない
諦めました
他のゲームエンジンの話を含むけど
直線とか曲線とか書けないのか
某ゲームエンジンで四角の画像を並べて線や点にしていた
難しそうなので画像にした
もう、これで完成でいいや
振り子であってゲームではない
http://kmajo.starfree.jp/pendulum/
ユーチューブできれいなのがあってから真似ようと思ったけど品粗なものになった
若干不自然な動きが、あるなあ なんとなくわかりましたけど、こんな感じ?
https://imgur.com/0NofQXw
多分、ちょっと違うかなぁ(Materialがサンプルのを使ってる)
これは単純にParticleSystemのTrailでやってるんだけど
独立したTrailRendererってのもあるから、そっちでもいい感じかもしれないです
多分、ちゃんとしたヒカルにはマテリアルをいじらないと、厳しいかもしれないっす 昨日のちょっと改良してみた
https://imgur.com/JnN9zrm
途中で発生数を少なくしてるけど、マテリアル使ったテクスチャをダイヤにして
んでEmission少しいれてみた
なんとなくキラキラしてる
これはTrail使わず、SimularionSpaceをWorldに置いてる感じ 次やる予定かもしれませんが、ライフカラーで徐々に透明にするともっと良くなりそうですね。 今日の成果!
てか最初透明にするの分からんかったけど、上のツマミクリックすると出てくるのね
これはやってみないとわからん
色を赤にして大きさも昨日より少し大きく
https://imgur.com/3XgO29y
Particleの中身は
https://i.gyazo.com/2baae31c452b529e47c40bfcc4b1fb7e.png
テクスチャは丸くしてみました
メディバンのエアーブラシでただ丸書いただけwwww
最初に比べるとかなりいいと思います 画面上で自分や敵や背景、障害物が動くのってupdateで座標動かすのか
高速になったときすり抜けとか起きそう
急に動いたり止まったりするキャラをベロシティで動かそうとすると色々制御しないとか
ググったりするけどわからなすぎる
すり抜けとか気にせず作ってしまうのもありかな
いつになっても動くものが作れないとやる気失くすし なんか高速で動く場合のってマニュアルにチェックする箇所ありましたね
後で見てみる youtubeにunity関連の動画あるけど日本語じゃないからわからん グラビティスケールを-0.1にしたら上に移動した
これってすごいことのような気がする
調べる気にならないので調べないけど他のゲームエンジンではできるのかな
massはマイナスにできなかった 早くも心折れる
参考になりそうなもの探したりしているだけで今日は終わりそうだ
それでもいいか こういうのってどうやって作っているんだろう
ダウンロードしてまで遊ぼうとは思わないけど
テトリスに物理演算を入れたらこうなる
http://youtu.be/HXVAIfp17kw 物理演算ってえとunity ならrigid body だよね
だからななめのなってそのままになっちゃう
ゲームとしてどうなの?って感じだよね
実物を正確にやるのがゲームじゃない見本だよね >>162
高速すり抜けは
https://docs.unity3d.com/ja/current/Manual/class-Rigidbody.html
にあるCollision Detectionで
ブログ検索すると検証しているのも見かけます
>>165
あぁmassじゃなかった失礼しました 今日の成果
https://imgur.com/6spfeaF
Particleを2つにしてみた
その場(Local)で発生と、Worldで発生これでなんとなく煙から光っぽくなった感じかなぁ なぜか専ブラでこのスレが過去ログ扱いになっていて書き込みできなかった
なおった 動かすときpositionの変更以外にどういうのがあるんだろう
上昇する床をpositionで動かしたら上に乗っているものがめり込んだりせずに上昇するのか?
なにか忘れたがメソッド使ったら斜めに進んだので、回転するものでも真上に動かしたいのでpositionで動かすように変更した
//今はこういうのが必要にはなってないので急いで知る必要ないけど >>175
面倒になった
タイトルシーン作って、play押したらシーン切り替えて動き始めるとか
店シーン作って店で買ってプレイヤーを強くするとか 違う実験した
砂や水みたいな感じに
有料アセット使えばリアルなのあるんだろうけど勉強なので
http://kmajo.starfree.jp/sand/
丸と四角で若干摩擦とバウンドを変えてる
丸いほうが崩れないので
http://kmajo.starfree.jp/images/ss2020-04-02-00007.png
* 左右にAddForce
* インスタンス生成したらAddTorque
丸いほうはかなりの量が重なっているのにゆっくり上下方向に散らばる 上下に床をtransform.positionで動かした
あえてすり抜けが起こる薄さと速度で
床が上がっているときめり込むね
たくさん重なっているのに上昇中ははじけ飛ばないね
タグってリネームできないのか
GameObject.FindGameObjectsWithTag
レイヤーで検索とかそういうのはないのね
タグを削除して作り直した後の
GameObject.FindGameObjectsWithTag
エディターのプレイでは問題なかったけど
webGLビルドでしたら検索できなかった
unity起動してビルドたら成功した >>175
ワニカー やっべーこれ終わりがないwwww
ちょっとはまりそうになったw
くまじょさんの作品ってシュールだよねなんとなく >>177
すり抜け防止
床を分厚くすればいいことだから必要性ないんだけど
Collision DetectionをContinuous
上から大量に落ちてくる球を
上昇する床で受け止める場合には効果ない
玉が多いと処理が重くなった
kinematicだとRigidbody2D.AddForceが効かないのか
dynamicだと落下して画面から出て行ってしまう、玉に当たって回転する
そもそも自由落下している玉の速度ですり抜けてしまうから
床の動かし方とか考えても仕方ないか simulationライブラリで純粋な関数式プログラミングをする
ttp://x0000.net/topic.aspx?id=3631-0
UIライブラリ (C#, 2D) を作ったよ
ttp://x0000.net/topic.aspx?id=3688-0 >>177
少し改造した
今なぜかSystemってのがCPU負荷あって
ときどき動きが固まる
何やってるのかわからないの
おかげで
床がカクカク動くから玉が高い位置まで跳ね上がり
挙動が狂うので迷惑だな
パズルゲームだったら致命的バグだろ 作りかけのがあるけど
>>177
こういうすぐ完成するし楽しい調査・勉強・実験をしたいという誘惑 >>184
上達するための一番基本部分ですよね
何ができてどう動くのか知ることって
やっぱり自分の使うツールの動作は知らないと何もできないしね 動く床って難しいみたいだな
ググってたら
床に乗ったら
床の子オブジェクトにするとか
床と同じベロシティーで一緒に動かすとか書いてあった
そうしないと俺が作った実験みたいに
めり込んだり跳び跳ねたりすっ飛んだりする経験を先人の人たちはしてきたのだろうか?そのあたりはしらない YouTubeのハウツーは日本語少ないな
あってもエディタ画面が細かくて何のフラグをクリックしたのか読めないけど ボタン.interactable = false;
一瞬普通のボタンで表示されてるな 角度を変えたいけど
ググってみると回転だったり
既に15度のものを30度にしたい
回転だと今の状態からさらに30度回転
なかなか俺のしたいことのぴったりなものが検索できない >>189
回転はいろいろ変わるから、ベースとして変数で持っておくと良いみたい。経験則。
その角度に足したりひいたりして、その値で反映させる。決して現在回転値をフィードバックさせない。 ときどきオブジェクトが表示されなくて悩んでしまう
2Dはz座標関係内的な話を見かけるが
カメラのz座標がデフォルトで-10になってて
オブジェクトのposition.zが-10とか-20だと表示されない
オブジェクトのposition.zの初期値が0だったり-10だったりランダムなのか? わにカーはこれで開発終わりにする
Shopでマッドマックスみたいな車の画像を表示しないと
オプション装備したのかしてないのかがわからない
俺にはそんな絵は無理なので開発を終わりとする いろいろやりたいことがあるけど
今はジョイントの勉強
特にジョイントを今すぐしなければならない理由はないけど Distance Joint 2DのBreak Forceって扱うの難しいな
ジョイントに強い力がかかると壊れるという意味らしいけど
フラグがoffになるとかジョイントが切断されるとかでなくて
ジョイントコンポーネントが削除されてしまう
毎回GetComponent<DistanceJoint2D>()で
コンポーネントが生きているか確認してから
ジョイントを扱わないといけないのか? なにかサンプルゲームでも見てみたいと思ったが
どうやったらサンプルゲームを入手しプロジェクトを開けるのかわからん 一つ何とか読めた
どうもなれないなあ
SampleSceneが残る
バージョン?
なんかunity再起動とか時間かかったな
だが今の俺のレベルに合う手ごろなサンプルが見つかってない 今開いてるプロジェクトに追加みたいになるのね
プロジェクト名や保存先を後から変えたい
眠い localScale
lossyScale がgetしかできない
どうやったらいいのか調査中 A点からB点まで線を引きたい
スプライトをA点とB点の中心においてATAN2で角度を求めスケールで長方形にしてみた
でもスプライトとA点とB点がグローバル(親不在)ではなかったときを考えたら
lossyScaleを変更したくなったが方法がわからん
親が回転していることなないものとする
しばらく考えているんだけどもう面倒だから
プラグラムでスプライトの親をnullに変えてしまうとか >>200
なんとかなりそうだ
親オブジェクトのスケールがx/y=1ではないとき角度がずれた
空の親オブジェクトにしてx/y=1に限定しよう 質問なのか愚痴なのかわからんのでなんとも
簡単な角度取得方法なら次のとこに
製作途中で得たUnityのミニ知識を披露するスレ
http://mevius.5ch.net/test/read.cgi/gamedev/1511784235/56 回答ありがとう
ジョイントの勉強してたらこんな時間になってしまった >>198
これフォルダ名を外部から変えると色々やっかいなので一番いい方法は、一度パッケージにします
んで新しいプロジェクトで読み込みすれば簡単に新しくなる Joint2Dの勉強中なんだが脱線してしまう
UIの種類が少ないね
今の俺のレベルではUI自作はすべきではないと思うが
UI自作したい衝動 たくさんのオブジェクトのスプライトを
インスペクタで手作業で設定すんのは面倒だなってことで
Resources.Loadってのを見つけたんだけど
Resourcesフォルダーにあるものしか読めないのかよ こつこつシーンにたくさんのオブジェクトを配置し
こつこつ各オブジェクトをいじってきたが
類似したものはプレハブにしたほうが
プレハブの変更すればシーンに配置したものが一括で変更が反映されるから
楽に済ませることができるのかな
だが、すでにシーンに配置しているから
これらを設定しなおすことになってしまう デフォルトのフォントではwebGLにすると日本語が表示されないのでフォントを指定した
unityをしばらく使用していると色を指定しているのに黒になるなど動作がおかしくなった
そういうものなのか?
シーンをセーブするとその時だけ治る
シーンをいったん別のに変えてロードしなおすと治る シーンのリロードはシーン名の右側の三点をクリックすると色々メニュー出てきてできたきがする 衝突のイベントはコリジョンが引数に入ってるけど
UIのイベントって引数ないのね
UIたくさん作ったから面倒になってきた ボタンとかオンクリックにパブリックな関数設定して、それに引数あればインスペクタで指定できるんじゃないかな
どんなUI なのか、わからんから的確かわからんけど 何日もかかってジョイントのプログラムを書いているが
まだDistance Joint 2Dの作成しかできてない
http://kmajo.starfree.jp/joints/
UIに凝っていて時間かかった。
イベントってインスペクタで引数に即値渡せるのとそうでないのがあるなどを知った。 >>212
スマホだとJavaScriptエラーが出た >>213
chMateからリンククリックしたかららしい
無事動作した
スマホからだと警告みたいの出るけど プロパティってインスペクタで設定できないのか
ググって見つけた方法は
public bool isOn // インスペクタでは Is Onと表示される
bool IsOn { get { return isOn; } set 以下省略
ちょっと違うんだよなあ
bool IsOn { get { return a & b | c; } set 以下省略
みたいに処理入れたいし
エディタで動く[ExecuteInEditMode]にも興味ある
クラスではなくプロパティに[ExecuteInEditMode]というのできるのかなあ
今の俺にエディタ拡張なんて無理だから適当にごまかす方法を考えてみる FixedJoint2D勉強おわった
マニュアルのFrequencyの説明が意味わからんなあ
試したところ接続元(自分)がぷらんぷらんする
すぐ時間たってしまう
途中昼寝してたけど
次はFriction Joint 2D
これも使い道わからん 勉強不足だった
Distance Joint 2Dからやり直してる >>206
因みにリソースズフォルダって複数作れるって
自分は最初知らんかった 画像がゆがんでて不満だったんだが
赤が茶色だったり細い線が切れてたりしているところを見るとJPEGに変換されているのか 自分、公式見ても内部でJPG にされてるという記載見あたらないんですがどこにあるのでしょうか
というかJPG とかって圧縮の技術だと思っててそれは保存するときの事だと思ってるのだけど
汚なくなるのはインポート設定で伸縮してるとか画像が2のべき乗になってないとか色々考えられるけど
画像見てみないことにはなんとも 以前あった質問でドット絵が汚なくなって表示されたときに色が変わるってのあったけど、画像サイズと表示サイズが違っていて、その時はpixel per unit が適切じゃなかったから というのはありましたね そういうことか
俺のJPEGってのは間違えで
拡大縮小や画像のサイズが悪いのか 別の話に変わる
unityの現象の話ではない
俺の視力の問題なのか
モニターの特性なのかわからないが
http://kmajo.starfree.jp/images/ss2020-04-13-00012.png
小さい!の赤い輪の右下がすごい細く見える
http://kmajo.starfree.jp/images/ss2020-04-13-00013.png
拡大してみると特に右下の赤が細いということではないので
俺の視力の問題かモニターの特性なのだろう
誰が悪いという問題ではないが見た目が悪いので気になる >>223
これは何となく原因解るから後でサンプル作ってみます
>>224
これは色彩効果で赤は黒に吸収されるから
赤丸を白のアウトラインで囲むと分かりやすくなるというか赤が強調されるかなと思いますがどうでしょう ハードウェアは得意じゃないので、古い知識で申し訳ないけど、
例えば、液晶モニターなら、白色光源の手前に赤青緑のカラーフィルターが貼られていて、
液晶で赤を隠せば水色に見えるし、青を隠せば黄色に見える、っていう構造になってる。
カラーフィルターの並びが、例えば「RBG」って並びだとして、
!の左側を拡大すると、
赤_赤_白
R__R__RBG
ってなって、独立したRが2つ(つまり赤2ドット)が見えることになる。
一方、!の右側を拡大すると、
白_赤_赤
RBGR__R__
って感じで、独立したRが1つ(つまり赤1ドット)しか見えない、ってことじゃないかと。
カラーフィルターの並びは、ストライプとかモザイクとかあるらしいので、もしストライプなら
水色の縦線と赤の縦線を並べれば、白に見えるのかも 参考まで
(←から、赤1dotと青1dot、青1dotと赤1dot、紫1dotのみ。デジカメで撮影)
https://i.imgur.com/6LCmzLh.jpg >>223
ちょいこちらで画像作成してやったんですが
https://i.gyazo.com/bb889b2dc0d4bd70ce792d59bead3eff.png
画像は32*32で作成
それを100/ppuと32/ppuで取り込みした
https://i.gyazo.com/61fed7ded8998a5b71fafe2ba91a2e97.png
上2枚が、それぞれ100/ppu と32/ppuでスケール3倍
下2枚はGUIのImageとRowImage
223にあった設定値にしてみたけど、こちらではそのまま表示されましたわ><
うーん、画像の作り?
とりあえずこちらの作成したのをパッケージにしましたので、もしよければそちらで確認してみてください
https://thuploader.orz.hm/miniup/?mode=dl&id=7232&original=1 ちょっと気になるのは、表示スケールが5倍になってるけど、
1倍でも同じだよね? 1倍だと小さくてよく見えないが
赤が汚いので同じだな aaa.bbb.c = 5
などにおいて
bbb { get set }だったときエラーになるのめんどくせえな
イラっと来た 今Hinge Joint 2Dの勉強したところだが
いままでいくつか勘違いしていたのかもしれない
いままでやってきた
Distance Joint 2D
Fixed Joint 2D
Friction Joint 2D
を作り直したくなった
混乱してきた >>212
更新した
いろいろ手直ししては
今まで作ってきた別シーンのキャンバスやプログラムを書き直すの繰り返しで
なかなか進まない Target Joint 2Dって他のジョイントとは違い座標に接続するのね >>212
これの続きを作成中
WheelJoint2Dって車の方に2つ付けて先端にタイヤをつなぐのか
このプログラムは1つのオブジェクトにジョイント2つ付けるなんて想定していなかった http://kmajo.starfree.jp/images/ss2020-04-16-00019-a.png
ということで青オブジェクトに2つのWheelJoint2Dジョイントを付ける
青オブジェクトに2つのWheelJ2Dスクリプトを付けた
一つ目のWheelJ2Dスクリプトは一つ目のWheelJoint2Dジョイントを担当
二つ目のWheelJ2Dスクリプトは二つ目のWheelJoint2Dジョイントを担当
に対応するようにしなければならない
インスペクタで指定してみた
そうやらうまくいってるみたいだ
見た目は同じB (2) (Wheel Joint 2D)で区別つかないけど http://kmajo.starfree.jp/images/ss2020-04-16-00020.png
青玉に2つのジョイントとタイヤ(緑と赤)をつないだ
青玉に2つのWheelJ2Dスクリプトがそれぞれの別のジョイントを担当しているから
WheelJ2Dスクリプトが個々のジョイントに印を付けることに成功 LineTo(x0, y0, x1, y1)
みたいなのほしかったなあ
スプライトを長方形にして済ませたけど
扇形とか平行四辺形とか使いたくなったときはどうすればいいんだろう
特に必要性はないけど
おやすみ スプライトというのは、絵 なので
平行線四辺形や菱形の絵を用意すればいいのだよ
unity が用意しているスプライトはあくまで仮なので本来はテスト段階で使って本番では差し替える用というのが公式の説明にチラッと書いてる
ラインはラインレンダラーで一応やれなくはない、ちょっと癖あるけどね >>212
これで完成かな
プラットフォームとか
シューティングとか
いろいろ挑戦すべきことあるけど
アセットからダウンロードしたゲームよくできてるけど俺にはハードル高いなあ たとえば麻雀の牌はどう作るんだろう
今すぐ麻雀を作るわけではない
60種類のプレハブを作るの?
それはないと思うのでset(発)で発の絵柄になるようにするのにはどうするのか?
俺は2Dでやってるから、立てたときと寝かしたときと伏せたときそれぞれの4方向も作らないと行けないな
いっそ3Dにすべきなのか
2Dで自分で2.5Dに見せる演出するより
角が丸みのある直方体とかわからんから
2Dでペラペラ牌が俺の限界かな
牌の向きを変えるときはオブジェクトを削除して横向きの牌の絵でインスタンスするとか
斜めとか使わない角度には対応しない
すでにわかっていることは
俺の視力低下で小さい絵とプログラムやツールの文字が読みにくくなった
牌を並べるとなると大きさに悩むな アニメーションとかでは
一枚の絵に多数のキャラを納めてる
あれをお絵描きソフトで作るの面倒だね 特に面白いネタを思い付かないなあ
今の俺のレベルで理解できるちょうどいいもの
実験・勉強もいいけど
オリジナルゲームがつくりたい
アイデアはない 絵は一つだけで
目の色変えたりしてキャラを作れるっていうのに興味ある
目の部分だけ別の絵にして差し替えるのも敵キャラならありだけど
市販ゲームなどにあるようなアバターツクールみたいなの
ベクター図形にも興味ある
輪郭線のない絵柄ならいいけど
縦方向に伸ばすと輪郭線の横線が太くなる
色はマテリアルの何とかに色相変換プログラム書いてパラメタ渡すとかあったな
実際に自分でやってみないと理解できないからいつか挑戦してみたい
ベクター図形が使えるって検索したら出てきた
これも実際に自分でやってみないと理解できないからいつか挑戦してみたい
プログラムから線と塗り潰しの色を変えられないのかなあ、アバターツクール的に 僕もゲーム作りたいでふ(^^
せっかく世間が引きこもれって言ってるんだから作らにゃソンソン 複数の画像で一つのものを作った時
プレハブにしていなかった場合は
エディタで位置を変えようとドラッグすると
たとえば腕だけ移動してしまう
プレハブにしてると
腕や足をドラックしても選択されてるのは親ゲームオブジェクトになってる
でもまだ今はお絵かき段階なので
どうやって実装したらいいのか検討中 トランプみたいなのはどうやってるんだろう
54種類のプレハブを作るのか
プレハブを変更したいとき54種類の修正が発生するのか
俺なりに考えたのは1種類のプレハブで
これなんだけど
https://qiita.com/motsat/items/927a4d2682765555b80d
public Sprite[] HoldSprite;って配列に改造して
インスペクタで配列に絵柄全部登録しておいて
SetImage(スペードの3の番号)
{
MainSpriteRenderer.sprite = HoldSprite[その番号];
}
みたいにするのかなあ 試しにド〇ジャラ風麻雀牌をならべてみたら
画面が狭かった
牌を小さくしないと駄目か
でも小さいと何の絵かわかりにくい
捨て牌で画面が埋まりわかりにくくなる
麻雀ゲームは作れないので作らない 値型を参照型に変えるのってできないのかなあ
値型変数a,b,c
一時的にg[0]がaになり、g[1]がb…
g[2]=6はc=6と同じ意味
g[0]=a
なにか処理する
リターン前に忘れずに
a=g[0]
とするのが無難なのかなあ unity 2D
管理用のEmptyのGameObjectスクリプト[ExecuteInEditMode]で
シーン編集中に上(Yが大きい値)にあるキャラクタが
下にいるキャラクタの背後になるように
それぞれのキャラクタを変えた
この操作はキャラクタのオーダーinレイヤーを変更することになる
でもセーブ対象になっていなくてシーン開くとメンバ変数が古い値のまま
うわああ
どうしようか
インスペクタに出るようにpublicメンバ変数にしてたけどやめて
キャラクタのスクリプト[ExecuteInEditMode]で
常時Y座標で更新するようにすべきなのかなあ
それともやり方が悪いのかなあ >>256
いろいろ変更したから一時的であって再起動で直っていて欲しい
キャラクタは複数のスプライトなどで構成されるemptyなので直接オーダーは操作してない 今は移動中でunityいじれない
検索してたらエディタ拡張の話で見つけたEditorUtility.SetDirtyで解決できるのかなあ
スクリプト[ExecuteInEditMode]の場合でも通用するのかわからない
◆キャラクタの1/2単位の座標でしか配置できない
◆キャラクタの一部が他のキャラクタと重なる表示になるとき重なり順が正しくなるようにしたいけどキャラクタが複数のgoで構成されてるからメンバ変数をいじる
◆同じ座標にキャラクタの配置を検出
などしてるのだがエディタ拡張ってのでやった方がいいのだろうか
エディタ拡張ってのがどんなものなのかまだわからない unityにアタッチしてデバッグ実行できなくなった
ファイルアクセスでメモリioが競合してスレッドセーフではないとか言ってくる
[ExecuteInEditMode]があるから? structもclassみたいにnewしないと使えないのか?
Vector3Int a
a.x = 0;
こういうことすると警告が出る。 #if UNITY_EDITOR
これって
[ExecuteInEditMode]を付けたスクリプトでシーンビュー編集中に有効で
エディターにある再生ボタンのやつで実行したときも有効なのか
勘違いしてた カード(トランプ)とかググったら
絵柄を示すスプライトの配列をインスペクタで設定してた
リソースをロードするより良さそう
プレハブにしてインスタンスしたあと、どの絵を使うか指定する方式
カードはたくさんあるわけでスプライトの配列をインスタンス変数にする必要があるのか
staticメンバ変数でいいか?
シングルトンに持たせるか?
だがインスペクタで見たり変更できる魅力は捨てられないし
リソースをロードするくらいしか別の方法を知らん
雑談でした シーンにあるスクリプトをプレハブに設定できない
まあ当たり前だよな
シーン1を開いてるときは
prefab..a = シーン1のスクリプト;
シーン2を開いてるときは
prefab..a = シーン2のスクリプト;
ってしないといけないわけで
staticメンバ変数 = this;
ってやって
つまりグローバル変数みたいな使い方で解決とする
シングルトンにはしないけど
シングルトンの作り方に似てるな シーンにあるスクリプトというのが、よくわからない
日記なのか質問なのかもわからないからどういえばいいか
とりあえず、Prefabに別のスクリプト付けたいならAddComponentで行けるよ ちなみに、シーンにあるのは、すべてGameObjectであって
スクリプトはそれらにアタッチしているコンポーネントね なんて俺はのんびりやすみやすみで作業が進まないんだ
なんか急におなかが痛くなってきたので休憩 のんびり休み休み
えっそんなの当たり前でしょ
Unityの機能の多さ考えたら一人で理解するには1年じゃたりない
2Dも3Dも技術はやる事沢山ある
そんな簡単に出来ると思ったのかなぁ?
自分はこれだけの機能なので1からじっくりと3年くらいかけて2D学ぼうとしてます
まだまだ分からない事沢山あるよ
でも検証しながら実際に分かった事を上げてる
そうじゃないとプログラムは意味ない 配列の検索ってなんでメンバではないんだろう
using System;
Array.IndexOf(array, data);
そしたら
RandomがUnityEngine.RandomなのかSystem.Randomか曖昧って言われた
ああああプログラミングってめんどくさい
なにかいい方法があるかもしれないと期待してぐぐってみるか using random=unity engine .random;
これ自動補完ででてくるやろ? クリックの当たり判定面倒だなあ
RaycastHit2Dが返される
キャラクタは複数のスプライトで構成されているから
RaycastHit2Dから欲しいスクリプトをたどらないといけないのか >>265
インスペクタが便利でほかのこと忘れてた
Start()でtransform.Find("Foo").GetComponent<Bar>()
でもいいんだよな
だがやはりインスペクタは便利だな キャラクタの大きさ 0.5 単位になるように
キャラクタの座標を修正するなどなど
[ExecuteInEditMode]でいろいろ修正するスクリプトにしたんだけど
ビルドすると
Undo.RecordObject
EditorUtility.SetDirty
がエラーになるんだね
※報告 ビルドでエラーがでた
自分の書いたスクリプトではなく
unityエンジンの何かが出してる
困った Unityにアタッチなどでデバッグしようとすると
出力ファイルの書き込み中にエラーが発生しました
でビルドが失敗する
困った WebGLのビルドで
System.BadImageFormatException
ログにすごい長い書き込み
まだハマってる いろいろ削ってビルドしているが
WebGLのビルドが解決しない この前あったwindows updateでも関係あるのかなあ 過去にビルドできてたプロジェクトもエラーになるようになってた
この前のwindows updateでDLLとかに互換性がなくなったのかな 何もない空のプロジェクトでもなるなら
それもあるかも
まっさらで行くなら他の要因 だめだ
新しいプロジェクトでもエラー
unityの別バージョンもエラー > System.BadImageFormatExceptio
これの対応があったけどどうだろか
もう遅いので寝ますが明日自分も確認してみたいかな
https://blog.yuizi.com/2012/10/badimageformatexception.html おはよございます
参りました、自分の環境でもWebGLのビルド出来ず
InvaridBuildぱthエラー
まいった、これじゃ1Weekだせねえええ
よっし今日はこれと格闘じゃあああ と思いきや、このエラーはプロジェクト以下でBuildするとなるのか
て事で別フォルダにして現在コンパイル中
ちな 弟子の環境は
2019.3.5f1
Windows10ほめ 1903
うん、とりま通ったなぁ
settingのApi…Levelを.NET2.0 でも 4.xでもいった
でも出来たIndexをクリックしてもブラウザがサポートしてねええええってなる
まいった ブラウザはFireFoxだと起動できた
とりあえず弟子のでは大丈夫そうでした
まっさらなプロジェクト
Canvasと文字
スプライトをランダムで生成、移動するプエロジェクト
どちらも問題なく・・・ ビルでできないので
プログラムの方進めていた
当たり判定をググって
Physics2D.Raycast
で実装したんだけど重なっている場合に対応できなかった
すぐには解決しそうにないからしばらくの間は
WebGLはあきらめることになるかな 重なりは深さ取得みたいなのでやるんだけど
Windowsのアップデートが原因ならWindows復元でアップデート前に戻すとか? いろいろググってみたけど解決せず
俺も設定見たんだけど.NET2.0でも4でも結果変わらず
別バージョンのunityをインストールしたが再現する
過去に作った作品でも再現する
新規の空プロジェクトでも再現する
別バージョンのunityと組み合わせても結果変わらず
確実な情報でもないしセキュリティとか問題あるかもしれない古い状態に戻すのは抵抗あるし
そもそもwindows updateは時間かかるし変なトラブル起きそうだしやりたくないなあ
JDKは今アンドロイドのビルドではないから関係ないな
windows update関連くらいしかもう怪しいものないなあ
見てたら.NETのKBがある
特定の.NETのアップデートで起こる現象なのかなあ
この前のwindows updateで最新の.NETになったわけじゃなかったんだー
ほかに試せそうなことないし.NETの更新、再起動
ビルドできた 日記
エディターでシーンの編集中に
まちがってキャラクタの親GameObjectではなく
構成要素の子オブジェクトを移動してしまった時の対策として
[ExecuteInEditMode]で
自分の子オブジェクトが定位置ではなかったら
自分GameObjectをつじつまが合う位置に移動し
子オブジェクトを定位置に戻す
これであたかも最初から自分GameObjectを移動させたかのような結果になる
というのを画策したわけだが
GameObjectはばらばらに散らばった
子オブジェクトを定位置に戻らずわけわからん位置に
そんなキャラクタがたくさんあるからとんでもない位置に
しくじった
しかもundoがきかない
座標はなぜかEditorUtility.SetDirtyを実行しなくてもセーブ対象になってしまうのが
楽だなあと思っていたがあだとなる
大量のキャラクタがごちゃごちゃに散らばった
覆水盆に返らすもっと散らばるばかり
再チャレンジは危険だなあ [ExecuteInEditMode]のクラスA
いろいろスクリプトいじっている
そこから別のオブジェクトBにアクセスしている
ときどきリセットされるらしくオブジェクトBのメンバがnullになっている
すぐにインスペクタの値が設定されるらしいが
nullになっている間にクラスAのUpdate()などが呼ばれる
クラスBのスクリプトはいじってなくても
こんなことになるなんて
SendMessage cannot be called during Awake, CheckConsistency, or OnValidate
というログが出た
unityの方がAwake実行中に呼び出しているということなのか
どうしましょう
上手く回避してごまかさないといけないのかな UIを別シーンにして
複数同時にシーンを使うようにしているが
ロードアンロード関係がわからんなあ シーンUIとシーンAを使用中に
シーンTitleへ移行するのはどうするんだ?
SceneManager.LoadScene("Title");
ではシーンAは消えたけど
シーンUIが残った
unityエディタ上での動作確認 Load scene の第二引数にモードがあってそれによって動くは変わるけど
それとは違うのかなぁ いろいろオブジェクトを参照するから
AにはBが必要
BにはCが必要
CにはDが必要
みたいな感じつながりすぎて切り離せなくなってた
うっかりしてた [ExecuteAlways]のときStart()が呼ばれてないなあ
Awake()のログは出たけど
Start()のログが出ない
エディタ上からの実行でも呼ばれていない
他のオブジェクトにアクセスするからAwake()ではなくStart()で処理したい
Awake()だと他のオブジェクトが準備できてないから支障ある
初期化フラグでStart()が実行されていなかったらUpdate()内からStart()を実行するとかしないといけないのかなあ
あるいは何か間違えているか代わりのコールバックがあるのか、わからん 説明のとこにあるサンプルは動かんの?
void Start() { if(Application.IsPlaying(gameObject)) { //再生ロジック } そうしないと { // エディターロジック } } [ExecuteAlways]のオブジェクトでは
先にインスペクタによる値の設定でOnValidate()が呼ばれる
ここで別オブジェクトを使いたいがエラー
Awake()が呼ばれ
Start()が呼ばれない
同じログがいっぱい出て正確な順番はわからず推測あり
使いたい別オブジェクトのAwake()がようやく呼ばれる
[ExecuteAlways]のオブジェクトで
Awake()やOnValidate()では何もせず
Update()でAwake()やOnValidate()と同じことをすればいいのかな
だが納得いかない
[ExecuteAlways]ではないときとはかなり違う挙動
必ず先に別オブジェクトを実行する方法ないのかなあ
2018.4.22f1 わざわざOnValidate()を使うようにしたのに
インスペクタで値をいじるとログに
SendMessage cannot be called during Awake, CheckConsistency, or OnValidate
がそのたびにでる
損した気分 エディターからplayしたときはStart()が呼ばれない
そこから別のSceneManager.LoadScene()した中のはStart()が呼ばれた あぁヴァージョンは
2019.2.5f1だけど特に問題ないとおもう >エディターからplay
考察すると「ExecuteAlways」これらのタグは常に動いているからPlay関係ないと思う
常にバッグクランドで起動しているための物だからまぁEditor拡張に使えるわけで
という事は、Startのタイミングがいつになるのか?
ということかなぁ 苦労しまくりだから楽な実装の方にもどすことにしよう
こりごりや つまんないからアイドルなんて気にしない方がいいよ
このまま続けるか
ポンジャンを始めるか
まだシューティンとか玉を発射するものなど
知らないことだらけ UIのパネルが表示されているとき
パネルの背後の牌をクリックできてしまうのね
今回は別に困らないけど
面倒だなあ えっ?普通出来ないと思うの
というか自分はゲーム終了でクリックされないように透明パネルだしてるのよくやるけど
何か設定じゃないのかな 牌は2D用のレイを飛ばすっていうやつでやってる
後から重なる牌に対応できないと知ったり
問題点小出しにされてしまう
UI専用シーンにしたけど
実行時にカメラを一台にした方がいいのかなあ
でもあとから追加ロードする別シーンのキャンバスのカメラはnullでいいの?
イベントシステムは一つあればいいのでUI専用シーンには最初から無い 以下でググったら
FindGameObjectsWithTag 非アクティブ
FindGameObjectsWithTagのことが書いていない
Findの話のページがヒットするなど
欲しい情報が得られない
関係しているように思わせて別の話ばかり >>320
非アクティブに切り替えるのではなくてレイヤーで代用してみるか
上手くいくか知らんけど >>319
自分はカメラ削除してるけど
必要ないっしょ 上海の生成処理に問題があったがもう休みは終わり
今のところ問題が実際に起きたことはないけど 問題起きた
ある意見で最後にタップした場所に
リトライのボタンが出て
リトライすることになったという
ボタンダウンで牌のコリジョンにレイを飛ばす方法で実装してたけど
UIプッシュボタンみたいにそのオブジェクト内でボタンダウンとボタンアップがあったらクリックされたと見なすように作った方がいいのかな
どう作ればいいんだろう カメラを一つにしようと
refCanvas.worldCamera = foo.refCamera;
Destroy(refCamera.gameObject);
エディタからプレイしたらunityエディタが落ちた
何も警告とか出ず消えた やべえコメントアウトしたのに落ちるようになった
別の理由なのかなあ unity起動してプロジェクト開くと
なんかtempの警告出たなRetoryして
プロジェクト起動したらログに
Curl error 51: Cert verify failed: UNITYTLS_X509VERIFY_FLAG_EXPIRED
というのが出た
再発するので作業できない
アセットにしてプロジェクト作り直した アセットにエクスポートして新プロジェクトでインポートしたが
画面サイズやレイヤー名など設定は入力しなおしなのね
レイヤーって名前使えるけど番号なのね
ビルドできなくなるとか突如落ちるとか心臓に悪い血の気が引く コルーチンが便利そうだな
Updateメソッドでたくさんのフラグで分岐するの避けられるかな >>325, 326
再現しなくなった
わざわざ
>>327
プロジェクト作り直したのになあ http://kmajo.starfree.jp/haropshan/
右下の青いのをクリックすると最大化する
もとは640x640のサイズだが
このときフルスクリーンにあわせて横長になるのってどうにかならんのかなあ
優先度は低い クリックの件、手っ取り早い方法
using UnityEngine.EventSystems;
public class ClickCntrl : MonoBehaviour
{
void Update()
{
if (Input.GetMouseButtonDown(0) || Input.GetMouseButtonUp(0))
{
if (EventSystem.current.IsPointerOverGameObject())
{
return;
}
}
if (Input.GetMouseButtonDown(0))
{
print("down");
}
if (Input.GetMouseButtonUp(0))
{
print("up");
}
} IsPointerOverGameObject はUIかどうかの判定みたいなのでUIでクリックしたら無視でける
他に要件あればつかえんかもしれ・・・ >>334
もしかしてボタンを押されたらbool値を返すようなメソッドって
UI関係にあります? すまん意味不明なんだが
何のBool値が欲しいのです?
ボタン押してもそこにスクリプト付けてないと何も動きません えーと
ボタンを調べたら
いろいろ制限があるらしくて
Button.onClicked == true みたいなboolのものはないということで
onclickするメソッドもpublic voidにしなきゃいけないらしいし
戻り値を指定できないし
あとボタンに引数も付けられるものが限られるので
インスペクタ上で引数1は持てるけど
string型とかだけならできるけどという感じで
調べてもよくわかんなかった
意外とボタンって制限多いんだなと 引数色々指定できますよ
何をしたいか具体例にいってくれないとわからんよ >>339
そうですか
すみません
調べ足りてないのかな 多分調べても欲しい情報は出て来ないのよ
ブログとかアフォな情報しかないから
やりたいことを具体的に書いてくれれば弟子が試してコード載せますよ
プログラムやる上で重量なことは何をどうしたいか具体的な事ね あ、でももう弟子は飲んで酔ってるから
試すのは明日になるからねっ いや物自体は完成してるのよ
ただぼたんで2,3日つまったから
IsPointerOverGameObjectとかそういうのでtrue falseを持てれば
複数の中から目的のものをボタンで3,4つの引数持たせて実行できれば
あとwait処理も入れたいので
waitしながらボタン処理を待ってそのあと目的のものを処理したら
waitを中止するというのを作ろう
と思ったら目的のものがnullだったことに気づいて
ステップ実行で何とかなったんだけど
ボタンの処理がどうしてもスクリプトから独立していて
うまく繋げられなかったんだ ScriptPai pai = Instantiate(prefabPai).GetComponent<ScriptPai>();
Destroy(pai.gameObject);
として実際見た目も消えているのに
GameObject.FindGameObjectsWithTag("Pai");
で消したはずのも検出してしまう
Destroy(pai.gameObject);を実行前にタグ名を変えておくことでごまかすけど >>344
[ExecuteAlways]が悪さしてるのかなあ
変更が多くてなくせないから検証してない >>344
それ実行したらヒエラルキーにゲームオブジェクト出来てるとおもうけどどうでしょ
まずスクリプト型オブジェクトの取得にinstantiate の帰り値指定してるけど、そもそもinstantiate はゲームオブジェクトを生成する命令
そのためスクリプトオブジェクトを破棄してもinstantiate で生成されたオブジェクトは破棄してないから残ってると推測
複雑にしないで順序だててやればいいかと 時間があるときにでも確認してみる
複数シーンを使用している GameObject[] goPais;
goPais = GameObject.FindGameObjectsWithTag("Pai");
if(goPais.Length != 0)
{
Debug.Log("★-1- おかしな現象が起きてるぞ goPais.Length=" + goPais.Length);
}
ScriptPai pai = MakePai(0, 0, 0);
goPais = GameObject.FindGameObjectsWithTag("Pai");
if (goPais.Length != 1)
{
Debug.Log("★-2- おかしな現象が起きてるぞ goPais.Length=" + goPais.Length);
}
//pai.tag = "Player"; // このあとDestroyしてるのにGameObject.FindGameObjectsWithTag("Pai");で見つけてしまう
Destroy(pai.gameObject);
goPais = GameObject.FindGameObjectsWithTag("Pai");
if (goPais.Length != 0)
{
Debug.Log("★-3- おかしな現象が起きてるぞ goPais.Length="+ goPais.Length);
} >>349
★-3- おかしな現象が起きてるぞ
が表示された
つまり
Destroyしたのに
GameObject.FindGameObjectsWithTagが見つけてしまう
このあと、
goPais = GameObject.FindGameObjectsWithTag("Pai");
goPais[0]になにかすると
すでにdestroyされているのでエラーになる >>349
GameObject.Destroyを使った方がいいのか? >>344-350
この質問を解決とします
どうやらこういう動作をするものらしい
Destroy(pai.gameObject);で即死はしていないので注意ってことだ >>350
訂正
Destroy() した直後は生きているから
m_goPais = GameObject.FindGameObjectsWithTagが見つけてしまう
直後ではなくて後で
m_goPais[0]に何かするとすでにdestroyされているのでエラーになる まったくわからんのだが
>>349のソースには
m_goPais がないんだけど、>>354で突如でてきて、に
m_goPaisに何かするとすでに ってさ
もうね、全部情報だしなよ
そんな自分しか知らない情報でここに書かれても、何したいの?
混乱させたんだね くらいしか思えないわ
プログラム作るならも少し仕様を決めて作ろ くまじょさんは、自分はおっちょこちょいでよくからんけど、Unityで偽情報流したいって自己紹介してる感じかな?
もちっと簡潔にしてシンプルなコードで試せばいいと思うけど あ、そうそう帝王さんってのもボタンのBool値が欲しいってさ
何のBool?
ActiveなのかEnableなのぁ、具体的に書いてねって言っても
Wait処理とか出てきたし
え、最初からそんなの書けよって事
なんで後出しじゃんけんするかなぁ
パラメータも3,4欲しいって
え?プログラム作るのにパラメータの数決まってないの?
それでどうやってIF作るのさ?
もちっと仕様ちゃんと考えよう 余計な部分はかえって分かりにくくしてしまうので忘れてください
paiはスクリプトコンポーネント
paiには"pai"というタグがついている
Destroy(pai.gameObject);
goPais = GameObject.FindGameObjectsWithTag("Pai");
でGameObject.FindGameObjectsWithTagが
pai.gameObjectを見つけてしまう
原因を調べてたら
どうやらこう動作をするものなので
回避する必要がある
ということがわかったという話 >>357
も、申し訳ございません。
質問というよりは
単にボタンで苦労した話をしたかっただけなのです >>359
すまんスクリプトコンポーネント自体にタグの設定など無いと思う
タグはゲームオブジェクトに付けられるものだと思うのだが
とうやって浸けたのかそのssとか方法を記載してもらえますか?
試して見たいのですよ
明日になるけど >>361
その指摘は正しい
スクリプトではなくゲームオブジェクトにタグがついていると読み替えてください
タグの話も忘れてください
さらに簡潔に表現すると
Destroy直後(すぐ次の行)ではまだオブジェクトは生きてたってだけのことですよ
検証はしてないけどそういう情報がネットにあったから ぐーぐるけんさく
unity destroy 直後 >>365
説明ありがとう
そりゃ始めからDestroy直後のfindでは見つけてしまうって理解してたら質問しないさ まずはブログ読むより先に公式の説明見て確認、検証するくせ付けた方がいいかもしれません
ブログは古い情報や間違った解釈が平然と書かれてる場合が多々あるから 間違った解釈というか
そのクラスならクラスの、
さわりの部分しか解説してないブログが多い それあるね
しかも他のWebで書いてあることじゃんての
その先が知りたいんだよ!ってみてもどこにも無いとかね 晒すか
以前angle命令調べるのに出てきたページなんだが
https://qiita.com/2dgames_jp/items/60274efb7b90fa6f986a
使えなさそうとか平気で書いてるんだよ
使い方知らないだけなんだよ
これについてはミニ知識スレにやり方書いてるけど
ほんとこういうページは駆逐したい 大なり小なり人はミスするんだから、駆逐したいとかなら指摘してあげるだけでいいんでは?
この記事見て、angleというのがあるんだ!と気付く初心者だっているし。 それがね最終更新が6年もまえなのよ
こういう、デジタル資産はホントにやっかい
真に受けてしまう初心者出てくるだろうにね >>371
あの記事見ると、angle というのがあるけど使えないのか、角度はやはり三角関数なのかぁめんどくさい と思う方が多いのではないかな?
折角簡単に取得出来るのにね
これキータの記事でしかもangle の検索でトップにくるから初心者はそれを信じるだろうね
そうなると、やっぱりunity 面倒だな
となり皆不幸になっていく
書き方なんだよね
検証したけど自分にはよくわからなかった 位ならいいけどさ
何故かは自分が出来ない=unity では無理 見たいに書く人多いよね そういうしらべものをして学んでいくのがプログラマなので、そこで挫折するならそれはしょうがない、不向きだったんだよ。
unityはあくまで煩雑な作業を軽くするツールで、素人が簡単に作れるという幻想の方が間違ってる。 今の人はゆとりなのかわからんが、調べもの=ネット検索だからねぇ
自分で検証コード書かないのばかりでしょ
質問スレ見てもそれは顕著だし
そこまでなんとからほっとくと益々底辺広がらず、それは現ユーザーにも悪影響になるからねぇ 職業プログラまと趣味プログラマとじゃ当然スキルは違うし、趣味で作る場合仕様から決めないとならんし、当然なにがどう出来るか?とかの検証もしないと仕様は出来ない
まぁ中にはフィーリングでやるやつもいるけどね
まぁ簡単には行かないけど、その分ブログ等の情報は正確にして欲しいよね
って事ね
ましてや不正確な情報を何年も放置、検索上位にもかかわらずだからさ 調べないですねw
まぁunity運営もそんな間口近辺はサポートする気が、余裕がないみたいですからね。チュートしかり。 よくわかんねーな
ゲームが完成すればいいんだよ
裏方になってゲームエンジンや言語の仕様を
調べ上げる必要のある人ってどれくらいいるだろうね
QIITAで順位上げるのが目的でゲームは完成させないなんて人
いるのかね
弟子さんくらいじゃないか 大体そういうのは
言語やエンジンの設計者がもっと細かに
いろいろな使い方を想定して
説明をマニュアル化すべき
プログラミング界隈ではなぜかそれを
一人ひとりの開発者がトライ&エラーしていくのが普通になってるけど さてまた変な七紙が現れたからこのスレも放棄するかな
何故かスレが伸びると自己主張したい七紙が出てくるよね
せっかく帝王さんとかくまじょさんとかと楽しくやってたんたが
てはノシ 雑談
マックでも実行できるからプラットホームにブラウザがあるゲームエンジン選んでいるが
今の時代はスマホやタブレットが主流なのかな
スマホは縦長なので両立が難しいな
unityのエリアの外の余白部分を触って拡大縮小できる
スマホ横向きにしたら上にはいろいろ表示があるし下には借りてるサーバーが広告バナーつけてるからほとんど表示できないし拡大縮小するための余白がない
これはゲーム画面を小さくして余白部分を確保してフルスクリーンとかできるように対応した
フルスクリーンにすると縦方向をジャストフィットしやがる
これもWebGLの話
Windowsでは左右の見えては困る部分まで表示する
スマホ縦長だと左右の見えなければいけない部分がはみ出るで見えない
スマホ横長だと左右の見えては困る部分まで表示する
簡単な解決方法ないのかなあ
なんかチェックつけてビルドするだけとか
いろいろしなければいけないならば諦める
スマホでもPCでもプラットホームを切り替えてビルドするだけで動くようにするの難しいな
まだAndroidのビルドをしたことない 1番手前のレイヤーに、プラットフォーム毎のマスクを用意して、判別して表示。でどうかな? ググってたらScriptableObjectっていうのを見つけた
面白そうというかもっと早く知りたかった
詳しいことはまだ知らない そのシーン内のグローバル変数的な使い方もできるのかな コルーチン便利だな
まだ詳しいことは知らないのけど
WindowsのC/C++等でアプリ開発してるときは
Windowsメッセージ処理中に別のWindowsメッセージ処理をするといろいろ面倒だった
再入すると困るメッセージがあったり
自分でメッセージループを呼び出すのだが
当然フレームワークが行うメッセージループとは多少違うものになる
マルチスレッドにしても面倒なトラブルがある
コルーチンも再入すると困る処理は回避しないとだけど ブロック崩しを作ってみた
バージョン0.1
http://kmajo.starfree.jp/grain-portal/index.html
試作なのでタイトルとかクリア画面はない
難しいから玉がたくさん出ることで簡単にした
いくつかおかしい点がある
角度の浅いバウンドが変だ
http://kmajo.starfree.jp/grain-portal/20200621-002.png
角度が浅いと壁と平行に動き出す
しかたないので玉が水平に動き出したら玉を消している
玉がワープして上に現れる
ブロックの分厚い集まりをすり抜けるとは思いにくいのだが
すり抜けなのかなあ
対策してない
特にスピードアップはしていないけど
玉の速度が劇遅になったり劇速になったり
ラケットにめり込んだりしているのかなあ >>387
玉がすり抜けて上に行くのは少しわかった
玉が増えるときに近くのブロックに当たってしまうのを防ぐために
新玉はブロックに当たらなくしている
新玉は最初下に落ちてラケットに当たってからブロックにも当たるようにしている
たけどなぜかたまに上昇しているのにブロックに当たらないのがいる
上昇しているならラケットに当たっているはずでブロックにも当たるはずだ
わからん
当たってバウンドしたけど負荷が高いから
OnCollisionEnter2D
が呼ばれていないということがあるのかな
どう対策しようか? >>387
ラケット(マウスで動く白丸の自機)に玉があたると
複数の玉が飛び散る
これはそのように作ったのではなくなぜかそうなる
完全に重なって一つに見える複数の玉が下に移動
ラケットにあたったら玉のレイヤーを変更すると
このような動作になった
玉のレイヤーを切り替えるのは
新しい玉が増えるとき近くのブロックに当たってしまうのを防ぐため
新しい玉はブロックに当たらなくしている
OnCollisionEnter2Dは取りこぼしがあるらしく
別のところにこの処理置いたら
完全に重なって一つに見える複数の玉のまま
いつまでも一つに見えてしまう たくさん衝突するとOnCollisionEnter2Dが来ないのがいくつかあるなあ
今回は別の方法で対応したが困るな >>387
一応バージョン0.2で完成
完成度は低いけど
いくつか疑問や
わかったことも書いておいた
本当は問題点を正面から解決できたら
いいのだが UIのスクロール使ってみたんだが
マスクしてくれるのはUI関連だけなのか
スプライトをイメージに置き換えないといけないのかなあ
どう対策しようか 難しいなあ
ボードゲーム等の2Dなんだけど設定画面用途ではなくゲーム画面で
*ビューエリア内でマスクされるスクロール
*テキスト表示
したいんだよなあ
スプライトとキャンバス内のイメージ等で機能やサイズ等が違うので混在させるの馬鹿馬鹿しい手間だなあ
いっそスプライト使わずに全部UIにしてキャンバスやイメージやテキストにした方がいいのかなあ
それか逆にUIは設定画面のみにしてスプライトやテキスト(固定文字と数字)をマスクしてスクロールとか頑張る
どれも初心者なおれには難しい
混在は座標が違うからやらない方がいいかな
UIではない方でできるか勉強してみる 何回も回答してそれらをヒントに正解するゲームなので
プレイ中に今まで回答した画像と数値を履歴リストみたいにスクロールで見られる用にする必要がある その気になったのに
帰りが遅くて朝早いから遊べる時間がない テキストとかあるしスクロールはUIかなあ
スプライトをイメージに変更して大きさとか面倒だけど デバッグだとうまくいくのにwebGLはボタンが押せなくなったと思ったら本文のテキストがボタンの上に重なってた
座標系は難しいなあ
自動的に位置調整してくれるのは便利なのかも知らないがけど実機で変化してしまう
開発中は気がつかん
キャンバスの子にはpbotとか言うやつは全部0.5で統一するのが言いなかなあ
端に固定を除いて
あるいは何かの子にしてそのなかで0や1
だけど入れ子にしたくない
入れ子にした方がいいか
わからないから迷う
なんかaなんとか40bytesというログが大量にで続けてログが使いたまのにならなくなった
ググったらバージョンアップで解決らしい
面倒なことになった スクロールビューが難しいな
プログラムからcontentのサイズ変えてもスクロールバーが対応しない
最初からcontentを大きくしておくと動作する
ググってみたらどれもVertical Layout Groupを使う
使わないといけないのか
縦一列または横一列ではないから自動で等間隔に並べられても困るし
Vertical Layout Groupを使うと解決する保証もないんだよな >>402
Vertical Layout Groupを使うとコンテンツが増えれば
Contentオブジェクトが大きくなるしスクロールバーも対応してくれた
だけど均等に縦にならべられてもこまるんだよなあ
上下にContentオブジェクトが大きくなった
Contentオブジェクトを上方向だけに伸ばしたい
Vertical Layout Groupが何を使ってContentオブジェクトの大きさを変えているのか分かればいいのかな >>403
あと追加した要素が下に延ばされるな
上に追加して上に大きくなっていきたい
下は空白のままで上に新規追加のみ
Vertical Layout Group使わない方法を探してみよう >>403
違った
Content Size filterも併用しないと上手くいかない
わからん
諦めて下に追加していくように変更することを検討しないといけないか >>402
なんとなくわかってきた
サイズ変え方がまずかった
あはは スクロールビューでデータを追加すると
この追加データの分だけコンテンツを上に伸ばして最上部に表示
この追加データが最上部に表示されるようにスクロール
一見うまくいってるんだけど
最上部へスクロールしていないときに追加するとコンテンツの高さが大きくなりすぎるなあ
RectTransformの影響だと思うんだけど調査中 http://kmajo.starfree.jp/images/ss2021-07-01-00094.png
これで親オブジェクトと同じ大きさになってくれるんだが
こいつの高さがわからん
RectTransform.sizeDeltaの値が0だった
親オブジェクトもこの図と同じ座標指定なんだよな
どうすりゃいいんだ
調査中 RectTransform.rectで代用することにした
スクロールビューのContentってスクロールバーも含めていやがるのかよ
よくわからんが動くので解決ってことにする WebGLなんだけど
古いバージョンでプログラム作っていたから2020.3.16f1にして
buildしたのをftpして実行したら
WebGL builds are not supported on mobile devices.
PCのクロームブラウザであってモバイルではないんだけどなあ。
動作しなかった
WebGL2.0ではなく1.0にしろとか見つけて
ついでにクオリティも下げたら
build&runはできたけど
buildしたのをftpして実行したらJavaScriptがエラー出してた
ブラウザでF12キーを押してコンソールを確認
エディターからの実行はできるんだけどなあ
最新バージョンではないから大丈夫と思っていたんだけど 2019.4.29f1にしたよ
バージョン変えるのは問題があるかもしれないみたいな警告が出た
ビルドできなくなった
俺が作ったスクリプトではない部分でビルドエラー
面倒なことにはまった
WebGLは厄介だなあ
他の人は問題起きていないのか
WebGLを使う人多いと思っていたが誰も使っていないのか
バックアップから戻してunityのバージョン変えるのやめるのがいいのか 前のバージョンに戻して何とか改造してみた
親オブジェクトに付けたコライダーですり抜けずにバウンドする物理演算できたけど
子オブジェクトについているコライダーはめり込んだりすり抜けるなあ ここの3D Animated PeopleってやつのUnity用のをもらってきたんだけど
https://renderpeople.com/free-3d-people/
どう使うのか1mmもわからない今日初めてUnityをインストールした初心者です
どうやったらUnity上でダンスを始めてくれるのか
適当なところへの誘導でも、ヒントでもいいので教えてください