2. Learn C# in Unity 初学者にありがちな混乱 ・言語の仕様 ・標準ライブラリの仕様 ・実行環境の仕様 この3つをごっちゃにして「何がわからないのかわからない」 状態になりがち。C#の文法の問題なのか、.Net Framework の問題なのか、Unityの問題なのか切り分けて考えよう。 今回は主にC#の文法の話と、よく使う(知らないとそもそも発 想に至らない).Net Frameworkの機能の話をします。 2/57 3. Learn C# in Unity オブジェクト指向 再々(xN)入門 ・その前に、とても眠くなるそもそも論 そもそもプログラムとは「データの加工」です。つまり「デー タ」と「加工」という2つの要素から成り立っています。プロ グラムの用語に直すと「変数」と「関数」です。 オブジェクト指向以前は、データと加工処理が完全に別れてい ました。データ、つまり
Unite 2013でUnity4.3に新GUIはまだ搭載されないニュースは失望があった一方、新GUIの検討内容に関する発表は驚きも沢山あった!! ------------ 新GUIであるDNFGUIに関するUnite発表資料 http://tasharen.com/unity/unite.ppt August 28 2013 DNFGUIとは? 有志のコミュニティにより名づけられた新GUIのニックネームUIシステムにおける「Duke Nukem Forever」(いつまでも発売されない事で有名だったゲームタイトル)となってほしいとの願い UnityGUIの歴史を辿ると・・・ 即時モードGUI(いわゆるOnGUI) 開発者ベースのUIシステム保持モードGUI(Unity GUIとしてUnite登場) 次のフレームまで保持 アーティストの使い勝手を向上しかし実際には魅力がイマイチだった・・・
Unityで実行するとき、コンポーネントが違うと少しめんどいので、 やり方をまとめて、どういう状況で使うのか整理しとこうかと。 大雑把に4種類、実行したいメソッドをTargetMethod()として以下。 1.GetComponent<T>() + TargetMethod(): 注意:対象GameObjectを事前に参照する必要がある。Findするとゲロ重い。 ×GetComponentが重い。 ○1度ゲットしとくと後は使い放題。複数引数とれるし、メソッド実行自体は早い 【用法】初期化でGetできて、動的にGetする必要がない場合+メソッド実行が複数回ある場合 【実用例】オセロ盤で作ったGUIに対してひっくり返るたびにひっくり返るメソッドを実行したい場合 SendMessage("TargetMethod") ※対象GameObjectを参照する必要がある。 ×引数が一つしか送れない ×
Unity3Dの公式マニュアル翻訳やってる人がiPhone, Androidでのゲームアプリ開発について記事にしています。Unity3Dでの開発をメインにAsset Storeで入手できるNGUI, Playmakerや, Oculus Riftなど作者サイトからの英語情報を翻訳していきます 最近、アセットストアでダウンロードしたコードに たまたま、LINQ を活用しているものがあって興味をもった。 そして「なるほどLINQ で書くと美しく見やすいコードを書ける場合があるのだ!」と素直に感じた。 調べてみたら、一般論としてUnity でどのような場合に活用すると良いか、Unity Gems に良い記事があったので2 回の投稿に分けて翻訳を紹介させてもらいたい。 長文ゴメン!!でもLINQをUnityでどう活用するか知らなかった人は覚えとくと、きっと役立つぜ! http://unitygem
Awake インスタンスが生成されて場に出てくるとき(is being loaded)に実行される ほかのオブジェクトの初期化が完了したあとに実行されることが保証されるので、このタイミングでFindXXXなどの、ほかのオブジェクトへ働きかけるメソッドが有効になる がしかし、すべてのオブジェクトに対してAwakeが実行される順番は未定義なので、Awakeが完了していることを前提とした他オブジェクトのメソッド呼び出しなどはやってはいけない。 せいぜい、他オブジェクトへの参照を得ておくだけにして、ここで得た参照をStart/Updateで使うべき Start 初回のUpdateの前に呼ばれるだけ Update 毎フレーム呼ばれる (ここで挙げた)すべての関数は、それを実装するオブジェクトについて実行順が未定義である*1(親子関係があったとしても、子から実行されるとか親から実行されるとかそういうの
MMORPG風ゲームのチュートリアル動画作成中。 意外と30分以内に収めることができない。 むむむ。 コンポーネントの追加方法について、少しまとめ。 コンポーネントは基本的にInspectorにD&Dで追加すれば良い。 とはいえ、要素が増えたりすると大変だし、 動的に設定したいと思う時もあるかもしれない。 その方法メモ。 D&Dの方法も含めると、方法は大体3通り。 ・RequireComponent ・AddComponent ・コンポーネントをD&D(もしくはメニューから追加)する ■RequireComponent この方法は、スクリプトにコンポーネント付与命令を追加する。 要するに、RequireComponentが書かれているコンポーネントを追加すると、 ついでにRequireComponentで指定しているコンポーネントも追加される。 コンポーネントを使うことが確定しているスクリ
先日のUnite(バンクーバ)でUnityの新GUIの情報が公開された。 内容をざっくり聞いた感じ、以前開発してた新GUI(retained model GUI)は止めて新しくGUI(uGUI)を作るらしい。 大雑把な機能はこんな感じ ・スプライトベースのシステム ・material effects ・自動でアトラスを生成 ・(NGUIの問題だった)深度の問題のが無い ・高さ・幅はScale以外で設定 ・ダイナミックフォントのサポート ・ステンシルベースのクリッピング ・その他諸々 何というか、皆NGUI使ってるから合わせたのか、NGUIっぽく仕上がっている。(とは言え、正直な所これが一番Unityと相性が良い方法のようにも思える) NGUIの問題点として上がっていたソート順等々も改善されるっぽいので楽しみ。 いつものNGUI風味 アンカーとか色々出来るらしい。 スクロールはステンシルで切
こんな感じにPlayerPrefsを使うと簡単にスコア情報を保存出来ます。 var Score : int = 0; function Awake () { Score = PlayerPrefs.GetInt("Score"); } function OnGUI () { if (GUI.Button(Rect(5, 5, 200, 50), "+1")) { Score++; PlayerPrefs.SetInt("Score", Score); } if (GUI.Button(Rect(5, 60, 200, 50), "Data Clear")) { Score = 0; PlayerPrefs.DeleteKey("Score"); } GUI.Label(Rect(5, Screen.height-20, Screen.width-10, 50), "Scroe:"+Scor
Unity3Dの公式マニュアル翻訳やってる人がiPhone, Androidでのゲームアプリ開発について記事にしています。Unity3Dでの開発をメインにAsset Storeで入手できるNGUI, Playmakerや, Oculus Riftなど作者サイトからの英語情報を翻訳していきます http://www.previewlabs.com/writing-playerprefs-fast/ 3/11/2011 Unity でプラットフォーム独自の方法でデータを保存するのに PlayerPrefs を使用することがある。 このクラスはハッシュテーブルの働きをして キーバリューのペアを保存できる。 ビルトインの PlayerPrefs クラスの欠点として iOS で非常に遅く、Android でさらに遅いことだ。Google Nexus One で行ったテストでは、毎秒あたり 平均 6.
前回のネタと代わって、ちょっと備忘録。Unityには原則的にグローバル変数相当のものがないです。基本的にシーン切替えのたびにGameObjectを全部リリースしてしまう方針になっています。ある程度まとめてヒープをごっそり片付けてしまうルールです。断片化やリーク対策には適切。 なるほど確かに精神衛生的…C#などがいくら「ガベージコレクションされるインスタンス型の経由を前提にしてるから、そこは…」と言っても、リアルタイムゲームにとってヒープ領域の断片化は常に恐ろしいものです。もしいつだって高速にアクセスできる本当に無限のレジスタがあれば、何も考えずにマシンガンの弾全てを一つ一つ無圧縮サウンド付きのオブジェクトに出来て、コーディングも今よりずっと気楽なものになると思うのですが、多分、永遠に記憶領域は足らないものなのでしょう。 さてUnityでゲーム用のグローバル変数的な何かを作るとしたら、それは
andrew0/cocoshop - GitHub https://github.com/andrew0/cocoshop/ ソースコードで配布されているので cocoshop.xcodeproj というプロジェクトファイルを開き、ビルドターゲットを cocos2d 、 cocoshop の順番で切り替えてそれぞれビルドして下さい。 この様に「位置、アンカーポイント、スケール、Flip、透明度、色、相対指定、回転量」が指定可能です。 レイアウトした後はcocos2dで簡単に使える様に成っています。 レイアウトファイルは .csd のファイルで、この様に読み込む様です。同梱されている CSExample1.xcodeproj がサンプルです。 CSDReader *csd = [CSDReader readerWithFile:@"example1.csd"]; CCNode *aNode
2020/10/18 エンジニア D4DJ Groovy Mix オープンベータ開始 2020/10/18 DJ 秋葉原(を夢見る)パラダイスレイディオ Vol.1 @ twitch配信 2020/10/25 エンジニア D4DJ Groovy Mix リリース 2020/11/14 DJ UNDER Freaks 2nd anniv. @ 渋谷Cafe W (渋谷WOMB 1F) ゲームプログラミング未経験の素人が、Unityを使って7日間1日1本クソゲーを作ってみて、気がついたことをまとめてみました。 ※2017/01/21 更新 VRでも7日間クソゲーを作り続けてみました! 【Unity】あの素人がOculusでVRクソゲーを7日間作り続けてみた | uinyan.com ※2013/12/28 更新 後日談も書きました!あわせてどうぞ! 【Unity】クソゲーを作って晒したら世界が
http://unitygems.com/memorymanagement/ October 21, 2012 ゲーム実行中にコンピュータあるいはデバイスのメモリ上で何が起きているのか、疑問に思ったことがある人は、この記事により、ゲームを上手に作成したりクラスや関数のメモリ使用を最適化するための技術的情報が得られると確信している。 メモリのゾーン 値型とスタック 参照型とヒープ 構造体とクラスの比較 参照を作成する Staticクラス Static変数 Static関数 ヒープのフラグメンテーション、オブジェクトプール、およびガーベージコレクション このチュートリアルは、UnityのためにC#に移行する、C/C++プログラマにピッタリである。C#は見た目とかなり違ってメモリを扱い、紛らわしかったり魔法のようだったりと最初は見えて、他のシステム同様に実際に落とし穴やクセがある。 Unityプ
このドキュメントは有志により翻訳されたもので、オフィシャルではありません。オリジナルのページはこちら。 This document is unofficially translated by users.Please see the original document here. 翻訳に関する修正など、ご連絡はこちらまで。 Please send e-mail to here, when you have any question about the translation. アセットサーバガイド(Asset Server Guide) Unityアセットサーバの概要(Unity Asset Server Overview) Unityアセットサーバはアセットとバージョンのコントロー ルシステムでグラフィカルなユーザインタフェースをもちUnityに統合されています。これは、チームのメンバが
まずは登録 まずは GitHub に登録してアカウントを取得します。GitHub のトップページから “Plans, Pricing and Signup” を押して登録ページへと移動してください。 “Free for open source” を選びましょう。 “Create a free account” を押します。 ユーザー名、メールアドレス、パスワードを入力して登録します。 メールアドレスに確認のメールが届きます。入力した情報を使ってログインしましょう。 こんな感じで、ホーム画面へ遷移するはずです。 GitHub for Windows GitHub は本来 Git を使うためのサービスですが、これをもっとシンプルに使いやすくしたツールを GitHub 自身がリリースしています。それが GitHub for Windows です。 てきとうにインストールして立ち上げましょう。こん
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く