SlideShare a Scribd company logo
1 of 68
Download to read offline
Unityと.NET
Aiming 大阪 開発グループ
松田理孝
自己紹介
● 2012年新卒エンジニア
● .NET/Mono/C#er
○ 今の業務はC++
○ 担当はWebAPI、鯖、蔵、サポート、メンテ、KPT
■ 浅く広く
● 好きなゲーム
○ ブラフ(ボードゲーム)
○ ガンスリンガーストラトス(アーケード)
○ Tokyo 7th シスターズ(iOS)
● 業務Unity暦
○ 2年くらい前に半年ほど
自己紹介
● 好きな食べ物
○ ホワイトチョコレート
○ イリー(エスプレッソ)
○ ジャック・ダニエル(ウィスキー)
● 趣味
○ テニス
○ アクアリウム
● 休日はイラストレータ
○ 趣味の延長
はじめに
● セッションの動機
○ ゲームエンジンとしてのUnityは優秀
○ しかし不幸になる人が多いのは何故か
はじめに
● セッションの目的
○ .NET/Monoから見たUnityとは何か
○ Unityを使う上で.NETにできる事
アジェンダ
1. .NETとは
2. .NETとMonoの関係
3. ゲームを作るうえでのUnityの役割
4. UnityにおけるMonoの役割
5. Unityとスクリプトコード
6. UnityとDLL
7. .NETをさらに有効活用していくには
.NET Frameworkとは
● Microsoftが開発したアプリケーション開発、実
行環境
● .NET FrameworkはCLRにその他ライブラリ群
を加えたものと言える。
○ Wikipediaより
お前は何を言ってるんだ?
.NET Frameworkは巨大
● まだまだ序の口
○ 基本ライブラリ
○ UI(WPF、XNA(MonoGames))
○ Web(OWIN, One ASP.NET)
○ データアクセス(EF、ADO.NET)
○ DIコンテナ(MEF)
○ 言語統合クエリ(LINQ)
○ 動的言語ランタイム(DLR)
○ ReactiveExtensions
○ 非同期(async/await)
○ 実行環境(CLR、Mono)
.NETに関わる部分も巨大
● 連携技術
○ Visual Studio
○ Nuget
○ Team Foundation Server
■ Visual Studio Online
○ Microsoft Azure
■ Hyper-V
■ Windows Server
■ SQL Server
○ WinRT(Windows Store App)
○ Win32 API
○ etc...
.NETは巨大過ぎてわからない
● MSが関わる部分ほとんどに関わるから巨大
● 最近はオープンソース化もしてるし
でも実際にやることって
.NETでは役割は2つにわかれている
ランタイム上で
中間言語を実行する
各言語(C#など)を
中間言語に変換する
.NETでは役割は2つにわかれている
ランタイム上で
中間言語を実行する
各言語(C#など)を
中間言語に変換する
中間言語 #とは
Common Intermediate Language
● 共通中間言語
○ .NETに対応している全ての言語は、コンパイラによって
この中間言語(のバイナリ)に変換される
■ UnityだとC#、Boo、JScript.NET
■ 他にはF#、VB.NET、C++/CLIなど
○ バイナリを逆コンパイルするとテキスト形式になる
■ 一応、人間が読める程度
■ 直接編集できる
○ 自分で編集したものを再コンパイルすれば当然使える
■ マシン語のアセンブラと同じ
Common Intermediate Language
● .NETランタイムに対するアセンブリ言語
○ アセンブリレベルでオブジェクト指向をサポート
○ 自分で直接エディタで書いてもOK
■ ちなみにC#コンパイラはCILの全ての機能をサポー
トしていない
● 実行時パフォーマンスや開発効率などを考えてそうなっている
● .NETランタイムはこの中間言語を、各環境に合
わせたマシン語に実行時コンパイルする
○ JITと呼ばれる
Common Intermediate Language
.cs
(テキスト)
.dll 
.exe
(バイナリ)
マシン語
.il
(テキスト)
Common Intermediate Language
.cs
(テキスト)
.dll 
.exe
(バイナリ)
マシン語
.il
(テキスト)
C#コンパイラ
Common Intermediate Language
.cs
(テキスト)
.dll 
.exe
(バイナリ)
マシン語
.il
(テキスト)
C#コンパイラ ランタイム
Common Intermediate Language
.cs
(テキスト)
.dll 
.exe
(バイナリ)
マシン語
.il
(テキスト)
C#コンパイラ ランタイム
IL逆アセンブラ ILアセンブラ
おさらい
● コンパイラは中間言語のバイナリを吐く
○ .NETの各ライブラリ等は、このバイナリの状態でやり取
りされる
■ マネージドなDLLという事
■ みんなが泥沼に嵌ったネイティブのDLLとは根本的
に仕組みが違う
○ 当然Roslyn(次期C#/VBコンパイラ)でも変わらない
● ネイティブを吐くときに必要なリンクが無い
○ ビルドが非常に高速
○ リンク作業はランタイムが動的に行う
アジェンダ
1. .NETとは
2. .NETとMonoの関係 ←まだここ
3. ゲームを作るうえでのUnityの役割
4. UnityにおけるMonoの役割
5. Unityとスクリプトコード
6. UnityとDLL
7. .NETをさらに有効活用していくには
Mono
● .NET Framework互換環境を実現するための
オープンソースのソフトウェア群
● 共通言語基盤 (CLI) の実装やC#のコンパイラ
などが含まれる
○ Wikipediaより
お前は何を言ってるんだ?
実はこの図、.NETに限定していない
.cs
(テキスト)
.dll 
.exe
(バイナリ)
マシン語
.il
(テキスト)
IL逆アセンブラ ILアセンブラ
C#コンパイラ ランタイム
.NETとMonoの比較
● C#コンパイラ
○ csc.exe (.NET)
○ mcs (Mono)
■ コマンドライン引数も同じようになってる
● つまり、XamarinStudioからRoslynを使うことも可能
● 実行方法
○ Windows上では、exeのメタデータを読み込んで.NETラ
ンタイム上で自動で動く
○ 例えばLinux上のMonoだとコマンドラインで動かす
■ mono hogehoge.exe
コンパイラとランタイムを置き換えると
.cs
(テキスト)
.dll 
.exe
(バイナリ)
マシン語
.il
(テキスト)
IL逆アセンブラ ILアセンブラ
csc.exe
mcs
CLR(.NET)
Mono
.NETとMonoの比較
● 中間言語は実行環境に依存しないので
○ csc.exeで作成したexeファイルがMono上で動く
○ その逆も然り
■ ただMono上で実装されていない機能、またはその
逆等もあるので注意
● .NETは他のMS製品と連携できる
○ IISと連携したASP.NETなどはデバッグが非常に楽
■ IE/VisualStudioを使って徹底的にやれる
○ MonoだとApacheで動かすことになるので面倒
■ できなくも無いレベル
アジェンダ
1. .NETとは
2. .NETとMonoの関係
3. ゲームを作るうえでのUnityの役割 ←ここ
4. UnityにおけるMonoの役割
5. Unityとスクリプトコード
6. UnityとDLL
7. .NETをさらに有効活用していくには
ゲームを作るうえでのUnityの役割
● Unity
○ みんな大好きゲームエンジン
■ ありがちな名前でいろいろ被ってややこしい
MO・MMOで必要なサービス
サーバ
クライアント
ツール
MO・MMOで必要なサービス
サーバ
● リアルタイム系
○ C++
● WebAPI系
○ ruby on rails
○ Python
○ PHP
クライアント
MO・MMOで必要なサービス
● Cocos2d-x
● Unity
● Win32/DirectX
● Flash(AIR)
ツール
MO・MMOで必要なサービス
● 設定系
○ Excel
○ Unity
○ その他ツール
■ WPFとか?
● サポート系
○ ruby on rails
● 運用系
○ シェルスクリプト
○ ロガー
Unityの役割とは
● クライアント
○ 描画エンジン
○ 物理エンジン
● 設定ツール(レベルデザイン)
○ 細かな数値設定には向いてない気がする
■ 膨大な数の武器とか美麗カードの設定とか
● を、マルチプラットフォームで実現できる
○ マルチプラットフォームも2つに分けられて、
■ Unity自体がWinでもMacでも動く
■ 成果物をAndroidやiOS向けに出力できる
アジェンダ
1. .NETとは
2. .NETとMonoの関係
3. ゲームを作るうえでのUnityの役割
4. UnityにおけるMonoの役割 ←ここ
5. Unityとスクリプトコード
6. UnityとDLL
7. .NETをさらに有効活用していくには
UnityにおけるMonoの役割とは
● クライアント
○ 描画エンジン
○ 物理エンジン
● 設定ツール(レベルデザイン)
● を、マルチプラットフォームで実現できる
○ マルチプラットフォームも2つに分けられて、
■ Unity自体がWinでもMacでも動く
■ 成果物をAndroidやiOS向けに出力できる
この部分!
Monoのサブプロジェクト
● Monodroid
● Mono touch
○ 今は名前が変わって
■ Xamarin Android
■ Xamarin iOS
○ みたいになってる
● Monoは実行環境
○ ということは?
UnityにおけるMonoとは
.cs
(テキスト)
.dll 
.exe
(バイナリ)
マシン語
.il
(テキスト)
IL逆アセンブラ ILアセンブラ
C#コンパイラ ランタイム
そうか、中間言語をAndroidやiOSで
動くようにしているのか!!
Unity5では
● Androidなんかでも、マネージドコードを送らず
に、iOSと同じAOTでネイティブコードを送って
パフォーマンスを上げようって言う話が出ている
らしい
アジェンダ
1. .NETとは
2. .NETとMonoの関係
3. ゲームを作るうえでのUnityの役割
4. UnityにおけるMonoの役割
5. Unityとスクリプトコード ←ここ
6. UnityとDLL
7. .NETをさらに有効活用していくには
Unityとスクリプトコード
● Unityで使える言語
○ C#
■ JScript.NET
● Boo
○ もうC#だけでいいよね
■ 変数小文字だったりするのはJScript由来だけど
● Unityで使えるC#のバージョン
○ 3.0
C# 3.0で使える構文
● 型推論var
● 拡張メソッド
● ラムダ式
● LINQ
○ from x in numbers where …
○ numbers.Where()....
● 匿名型
○ var point = new { X = 0, Y = 0 };
● C# 2.0からのもの
○ ジェネリクス
他言語から見たら今風だけど
● C# 4.0
○ DLR
○ Task
● C# 5.0
○ async/await
● 有意義に使いたい
● C# 6.0
○ Roslyn
■ C#コンパイラ
■ IL吐くだけだから基準満たせばUnityでも使えそう
Unityにおけるスクリプトとは
.cs
(テキスト)
.dll 
.exe
(バイナリ)
マシン語
.il
(テキスト)
IL逆アセンブラ ILアセンブラ
C#コンパイラ ランタイム
Unityにおけるスクリプトとは
● DLLに変換できればなんでもいい
● ただし
○ UnityのMonoが認識できるもの
○ Unityのライセンス内のもの
■ 無償版だとモバイルでSocket使えないよ
● だからJScriptやBooでも書ける
アジェンダ
1. .NETとは
2. .NETとMonoの関係
3. ゲームを作るうえでのUnityの役割
4. UnityにおけるMonoの役割
5. Unityとスクリプトコード
6. UnityとDLL ←ここ
7. .NETをさらに有効活用していくには
C#とDLL
● Dynamic Link Library
○ しつこいけど、ネイティブのDLLとは別物
● 単純にクラスをまとめたという認識でOK
○ 厳密には色々あるけどまた今度
DLL
namespace A;
class A;
class B;
class C;
namespace B;
class A;
class B;
class C;
UnityとDLL
● Unityでは2つのライブラリが用意されてる
○ UnityEngine.dll
■ ゲームそのものに必要なクラス群
○ UnityEditor.dll
■ エディタを拡張するのに必要なクラス群
● Unityにも自作のDLLを放り込める
○ Assetフォルダ内に配置するだけ
Unity依存な部分をライブラリに
UnityEngine.dll
MyGameLibrary.dll
Assetフォルダ内に
入れた
もともと見てる
Unity依存な部分をライブラリに
UnityEngine.dll
MyGameLibrary.dll
MonoBehaviour使いたい><。
Unity依存な部分をライブラリに
UnityEngine.dll
MyGameLibrary.dll
Unityが見てるDLLを
参照すればいいだけ
Unityのエディタ拡張も共有
UnityEditor.dll
MyEditor.dll
他チームで使いたいときは、
このDLL一個送るだけで良い
なぜDLLに分離するのか
● そもそも、Unityのコンパイルの手順は
○ Asset内のスクリプトをまとめDLLの様なものにする
○ DLLをリフレクション使って解析してアレコレしてるはず
■ DLLにしてもそのまま.cs書いても変わらない
● ちゃんと動作保障できたDLL単位で分離できれ
ば、次のプロジェクトに対する資産にもなる
○ この辺.NETの十八番のようなもの
■ Win32で痛い目見た経験
■ Fakesはよ、VS Proにはよ
アジェンダ
1. .NETとは
2. .NETとMonoの関係
3. ゲームを作るうえでのUnityの役割
4. UnityにおけるMonoの役割
5. Unityとスクリプトコード
6. UnityとDLL
7. .NETをさらに有効活用していくには ←最後
開発に時間はかけていられない
● で、求められる内容
○ もっとリッチに、快適に
○ リアルタイム通信
■ ないかもしれないけど
○ 仕様変更とか余裕で対処してね
○ サーバとか落としていられない
○ アプリだって落としていられない
■ 審査にも落としていられない
○ 設定だって効率よくしたい
○ サポートエンジニアなんて沢山割けない
○ 人を増やすほど人海戦術の効果は薄くなっていく
■ 人を増やしても開発期間伸びるでしょ?
MO・MMOで必要なサービス
サーバ
クライアント
ツール
MO・MMOで必要なサービス
サーバ
● リアルタイム系
○ C++
○ C#/.NET
● WebAPI系
○ ruby on rails
○ Python
○ PHP
○ ASP.NET
● データベース
○ ADO.NET
■ EntityFramework
クライアント
MO・MMOで必要なサービス
● Cocos2d-x
● Unity(C#/Mono)
○ 他にもC#あるはず…
● Win32/DirectX
● Flash(AIR)
ツール
MO・MMOで必要なサービス
● 設定系
○ Excel
○ Unity
○ その他ツール
■ WPFとか
● サポート系
○ ruby on rails
○ ASP.NET
● 運用系
○ PowerShell
共通化した時のメリット
● ちゃんと動作保障できたDLL単位で分離できれ
ば、資産になる
○ 設定ファイルの読み書きDLLを各部分から使用できるよ
うになる
○ サポートツール上のログ検索ロジックの入ったDLLを、
運用中のサーバにアクセスしたPowerShellで叩けるよ
うになる(ツールを開かなくても良い)
○ Unityに依存する部分を少なく設計すれば移植も楽
● コードを共通化することで保守部分が減る
● 車輪の再発明も少なくなる
.NET Frameworkを手に入れられる
● まだまだ序の口
○ 基本ライブラリ
○ UI(WPF、XNA(MonoGames))
○ Web(OWIN, One ASP.NET)
○ データアクセス(EF、ADO.NET)
○ DIコンテナ(MEF)
○ 言語統合クエリ(LINQ)
○ 動的言語ランタイム(DLR)
○ ReactiveExtensions
○ 非同期(async/await)
○ 実行環境(CLR、Mono)
.NETに関わる部分も使えるようになる
● 連携技術
○ Visual Studio
○ Nuget
○ Team Foundation Server
■ Visual Studio Online
○ Microsoft Azure
■ Hyper-V
■ Windows Server
■ SQL Server
○ WinRT(Windows Store App)
○ Win32 API
○ etc...
.NETは巨大
=共有化の可能性が無限大
ご静聴ありがとうございました

More Related Content

What's hot

IL2CPPに関する軽い話
IL2CPPに関する軽い話IL2CPPに関する軽い話
IL2CPPに関する軽い話Wooram Yang
 
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説Unity Technologies Japan K.K.
 
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-Unity Technologies Japan K.K.
 
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例UnityTechnologiesJapan002
 
UE4で使えるSpatialized Audio Plug-inどう違うの?どれ使えばいいの?
UE4で使えるSpatialized Audio Plug-inどう違うの?どれ使えばいいの?UE4で使えるSpatialized Audio Plug-inどう違うの?どれ使えばいいの?
UE4で使えるSpatialized Audio Plug-inどう違うの?どれ使えばいいの?Satoru Okubo
 
【Unite Tokyo 2018】Audio機能の基礎と実装テクニック
【Unite Tokyo 2018】Audio機能の基礎と実装テクニック【Unite Tokyo 2018】Audio機能の基礎と実装テクニック
【Unite Tokyo 2018】Audio機能の基礎と実装テクニックUnityTechnologiesJapan002
 
UE4 コリジョン検証 -HitとOverlapイベントが発生する条件について-
UE4 コリジョン検証 -HitとOverlapイベントが発生する条件について-UE4 コリジョン検証 -HitとOverlapイベントが発生する条件について-
UE4 コリジョン検証 -HitとOverlapイベントが発生する条件について-Tatsuya Iwama
 
【Unite 2018 Tokyo】Unityにおける疎結合設計 ~UIへの適用事例から学ぶ、テクニックとメリット~
【Unite 2018 Tokyo】Unityにおける疎結合設計 ~UIへの適用事例から学ぶ、テクニックとメリット~【Unite 2018 Tokyo】Unityにおける疎結合設計 ~UIへの適用事例から学ぶ、テクニックとメリット~
【Unite 2018 Tokyo】Unityにおける疎結合設計 ~UIへの適用事例から学ぶ、テクニックとメリット~UnityTechnologiesJapan002
 
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなすUnity Technologies Japan K.K.
 
【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作
【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作
【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作UnityTechnologiesJapan002
 
UniTask入門
UniTask入門UniTask入門
UniTask入門torisoup
 
Observableで非同期処理
Observableで非同期処理Observableで非同期処理
Observableで非同期処理torisoup
 

What's hot (20)

IL2CPPに関する軽い話
IL2CPPに関する軽い話IL2CPPに関する軽い話
IL2CPPに関する軽い話
 
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
【Unite 2018 Tokyo】そろそろ楽がしたい!新アセットバンドルワークフロー&リソースマネージャー詳細解説
 
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
 
UE4でマルチプレイヤーゲームを作ろう
UE4でマルチプレイヤーゲームを作ろうUE4でマルチプレイヤーゲームを作ろう
UE4でマルチプレイヤーゲームを作ろう
 
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
 
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
【Unite Tokyo 2019】運用中超大規模タイトルにおけるUnityアップデート課題の解決手法と事例
 
UE4で使えるSpatialized Audio Plug-inどう違うの?どれ使えばいいの?
UE4で使えるSpatialized Audio Plug-inどう違うの?どれ使えばいいの?UE4で使えるSpatialized Audio Plug-inどう違うの?どれ使えばいいの?
UE4で使えるSpatialized Audio Plug-inどう違うの?どれ使えばいいの?
 
【Unite Tokyo 2018】Audio機能の基礎と実装テクニック
【Unite Tokyo 2018】Audio機能の基礎と実装テクニック【Unite Tokyo 2018】Audio機能の基礎と実装テクニック
【Unite Tokyo 2018】Audio機能の基礎と実装テクニック
 
UE4 コリジョン検証 -HitとOverlapイベントが発生する条件について-
UE4 コリジョン検証 -HitとOverlapイベントが発生する条件について-UE4 コリジョン検証 -HitとOverlapイベントが発生する条件について-
UE4 コリジョン検証 -HitとOverlapイベントが発生する条件について-
 
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
 
猫でも分かるUE4を使ったARコンテンツ作り方 初級編 ver 1.0.0
猫でも分かるUE4を使ったARコンテンツ作り方 初級編 ver 1.0.0猫でも分かるUE4を使ったARコンテンツ作り方 初級編 ver 1.0.0
猫でも分かるUE4を使ったARコンテンツ作り方 初級編 ver 1.0.0
 
【Unite 2018 Tokyo】Unityにおける疎結合設計 ~UIへの適用事例から学ぶ、テクニックとメリット~
【Unite 2018 Tokyo】Unityにおける疎結合設計 ~UIへの適用事例から学ぶ、テクニックとメリット~【Unite 2018 Tokyo】Unityにおける疎結合設計 ~UIへの適用事例から学ぶ、テクニックとメリット~
【Unite 2018 Tokyo】Unityにおける疎結合設計 ~UIへの適用事例から学ぶ、テクニックとメリット~
 
UE4のシーケンサーをもっともっと使いこなそう!最新情報・Tipsをご紹介!
UE4のシーケンサーをもっともっと使いこなそう!最新情報・Tipsをご紹介!UE4のシーケンサーをもっともっと使いこなそう!最新情報・Tipsをご紹介!
UE4のシーケンサーをもっともっと使いこなそう!最新情報・Tipsをご紹介!
 
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす
【Unity道場スペシャル 2017博多】TextMesh Pro を使いこなす
 
【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作
【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作
【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作
 
Unreal Engine 4.27 ノンゲーム向け新機能まとめ
Unreal Engine 4.27 ノンゲーム向け新機能まとめUnreal Engine 4.27 ノンゲーム向け新機能まとめ
Unreal Engine 4.27 ノンゲーム向け新機能まとめ
 
UniTask入門
UniTask入門UniTask入門
UniTask入門
 
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られたNintendo Switch『OCTOPATH TRAVELER』はこうして作られた
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
 
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
 
Observableで非同期処理
Observableで非同期処理Observableで非同期処理
Observableで非同期処理
 

Viewers also liked

Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなしUnity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなしMori Tetsuya
 
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみたADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみたNarami Kiyokura
 
ゲームエンジンとMVC
ゲームエンジンとMVCゲームエンジンとMVC
ゲームエンジンとMVCAimingStudy
 
HoloLens x Graphics 入門
HoloLens x Graphics 入門HoloLens x Graphics 入門
HoloLens x Graphics 入門hecomi
 
Cloud Native Application on DEIS by using 12 factor
Cloud Native Application on DEIS by using 12 factorCloud Native Application on DEIS by using 12 factor
Cloud Native Application on DEIS by using 12 factorYoshio Terada
 
Preparation to Start the Microservice for Java EE developers
Preparation to Start the Microservice for Java EE developersPreparation to Start the Microservice for Java EE developers
Preparation to Start the Microservice for Java EE developersYoshio Terada
 
Unity道場aseスペシャル補足資料
Unity道場aseスペシャル補足資料Unity道場aseスペシャル補足資料
Unity道場aseスペシャル補足資料小林 信行
 
HttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴についてHttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴についてYoshifumi Kawai
 
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践Yoshifumi Kawai
 

Viewers also liked (10)

Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなしUnity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
 
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみたADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
 
ゲームエンジンとMVC
ゲームエンジンとMVCゲームエンジンとMVC
ゲームエンジンとMVC
 
HoloLens x Graphics 入門
HoloLens x Graphics 入門HoloLens x Graphics 入門
HoloLens x Graphics 入門
 
Cloud Native Application on DEIS by using 12 factor
Cloud Native Application on DEIS by using 12 factorCloud Native Application on DEIS by using 12 factor
Cloud Native Application on DEIS by using 12 factor
 
Preparation to Start the Microservice for Java EE developers
Preparation to Start the Microservice for Java EE developersPreparation to Start the Microservice for Java EE developers
Preparation to Start the Microservice for Java EE developers
 
Unity道場aseスペシャル補足資料
Unity道場aseスペシャル補足資料Unity道場aseスペシャル補足資料
Unity道場aseスペシャル補足資料
 
HttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴についてHttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴について
 
Binary Reading in C#
Binary Reading in C#Binary Reading in C#
Binary Reading in C#
 
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
 

Similar to Unityと.NET

C# で i phone ゲーム開発
C# で i phone ゲーム開発C# で i phone ゲーム開発
C# で i phone ゲーム開発Katsutoshi Makino
 
Webプログラマの為のUnity入門
Webプログラマの為のUnity入門Webプログラマの為のUnity入門
Webプログラマの為のUnity入門Yusuke Ando
 
Unityを触ってみた話
Unityを触ってみた話Unityを触ってみた話
Unityを触ってみた話tomomihirano1
 
ゲムつくプログラミング講座
ゲムつくプログラミング講座ゲムつくプログラミング講座
ゲムつくプログラミング講座purinxxx
 
【ハンズオン】初めてのUnityで作る「3D野球盤」_"8a1"20150204発表資料
【ハンズオン】初めてのUnityで作る「3D野球盤」_"8a1"20150204発表資料【ハンズオン】初めてのUnityで作る「3D野球盤」_"8a1"20150204発表資料
【ハンズオン】初めてのUnityで作る「3D野球盤」_"8a1"20150204発表資料8a1
 
いろいろ見せますLord of Knightsのクライアント開発事例紹介
いろいろ見せますLord of Knightsのクライアント開発事例紹介いろいろ見せますLord of Knightsのクライアント開発事例紹介
いろいろ見せますLord of Knightsのクライアント開発事例紹介Kouji Hosoda
 
はじめてのUnity教室 講義用ppt
はじめてのUnity教室 講義用pptはじめてのUnity教室 講義用ppt
はじめてのUnity教室 講義用pptTaro Takano
 
スマートフォン勉強会 関東 19
スマートフォン勉強会 関東 19スマートフォン勉強会 関東 19
スマートフォン勉強会 関東 19Kenji Daikoku
 
Unity講習会(初級)
Unity講習会(初級)Unity講習会(初級)
Unity講習会(初級)torisoup
 
Unity初心者が2 d sprite使ってゲームを作ってみた【前半戦】
Unity初心者が2 d sprite使ってゲームを作ってみた【前半戦】Unity初心者が2 d sprite使ってゲームを作ってみた【前半戦】
Unity初心者が2 d sprite使ってゲームを作ってみた【前半戦】Toshitaka Muraishi
 
波に乗ってUnity3Dを使ってみているんだが (Ameba x Pixiv 合同勉強会LT)
波に乗ってUnity3Dを使ってみているんだが (Ameba x Pixiv 合同勉強会LT)波に乗ってUnity3Dを使ってみているんだが (Ameba x Pixiv 合同勉強会LT)
波に乗ってUnity3Dを使ってみているんだが (Ameba x Pixiv 合同勉強会LT)maginemu Mishimagi
 
UnityでVRアプリを作ってみよう! (講演編)
UnityでVRアプリを作ってみよう! (講演編)UnityでVRアプリを作ってみよう! (講演編)
UnityでVRアプリを作ってみよう! (講演編)Masahiro Ide
 
C#でiPhoneアプリ開発 with MonoTouch
C#でiPhoneアプリ開発 with MonoTouchC#でiPhoneアプリ開発 with MonoTouch
C#でiPhoneアプリ開発 with MonoTouchShin Ise
 
ゲームエンジンの違い
ゲームエンジンの違いゲームエンジンの違い
ゲームエンジンの違いHideki Koike
 
Androidアプリ開発を楽にするために
Androidアプリ開発を楽にするためにAndroidアプリ開発を楽にするために
Androidアプリ開発を楽にするためにShuichi Takaya
 

Similar to Unityと.NET (20)

C# で i phone ゲーム開発
C# で i phone ゲーム開発C# で i phone ゲーム開発
C# で i phone ゲーム開発
 
Unity ゲーム開発
Unity ゲーム開発Unity ゲーム開発
Unity ゲーム開発
 
Unity講座
Unity講座Unity講座
Unity講座
 
Webプログラマの為のUnity入門
Webプログラマの為のUnity入門Webプログラマの為のUnity入門
Webプログラマの為のUnity入門
 
Unityを触ってみた話
Unityを触ってみた話Unityを触ってみた話
Unityを触ってみた話
 
Let’s study unity
Let’s study unityLet’s study unity
Let’s study unity
 
ゲムつくプログラミング講座
ゲムつくプログラミング講座ゲムつくプログラミング講座
ゲムつくプログラミング講座
 
【ハンズオン】初めてのUnityで作る「3D野球盤」_"8a1"20150204発表資料
【ハンズオン】初めてのUnityで作る「3D野球盤」_"8a1"20150204発表資料【ハンズオン】初めてのUnityで作る「3D野球盤」_"8a1"20150204発表資料
【ハンズオン】初めてのUnityで作る「3D野球盤」_"8a1"20150204発表資料
 
いろいろ見せますLord of Knightsのクライアント開発事例紹介
いろいろ見せますLord of Knightsのクライアント開発事例紹介いろいろ見せますLord of Knightsのクライアント開発事例紹介
いろいろ見せますLord of Knightsのクライアント開発事例紹介
 
Techhills 6.18
Techhills 6.18Techhills 6.18
Techhills 6.18
 
はじめてのUnity教室 講義用ppt
はじめてのUnity教室 講義用pptはじめてのUnity教室 講義用ppt
はじめてのUnity教室 講義用ppt
 
スマートフォン勉強会 関東 19
スマートフォン勉強会 関東 19スマートフォン勉強会 関東 19
スマートフォン勉強会 関東 19
 
Unity講習会(初級)
Unity講習会(初級)Unity講習会(初級)
Unity講習会(初級)
 
Unity初心者が2 d sprite使ってゲームを作ってみた【前半戦】
Unity初心者が2 d sprite使ってゲームを作ってみた【前半戦】Unity初心者が2 d sprite使ってゲームを作ってみた【前半戦】
Unity初心者が2 d sprite使ってゲームを作ってみた【前半戦】
 
波に乗ってUnity3Dを使ってみているんだが (Ameba x Pixiv 合同勉強会LT)
波に乗ってUnity3Dを使ってみているんだが (Ameba x Pixiv 合同勉強会LT)波に乗ってUnity3Dを使ってみているんだが (Ameba x Pixiv 合同勉強会LT)
波に乗ってUnity3Dを使ってみているんだが (Ameba x Pixiv 合同勉強会LT)
 
UnityでVRアプリを作ってみよう! (講演編)
UnityでVRアプリを作ってみよう! (講演編)UnityでVRアプリを作ってみよう! (講演編)
UnityでVRアプリを作ってみよう! (講演編)
 
C#でiPhoneアプリ開発 with MonoTouch
C#でiPhoneアプリ開発 with MonoTouchC#でiPhoneアプリ開発 with MonoTouch
C#でiPhoneアプリ開発 with MonoTouch
 
ゲームエンジンの違い
ゲームエンジンの違いゲームエンジンの違い
ゲームエンジンの違い
 
Androidアプリ開発を楽にするために
Androidアプリ開発を楽にするためにAndroidアプリ開発を楽にするために
Androidアプリ開発を楽にするために
 
Unity って何?
Unity って何?Unity って何?
Unity って何?
 

More from AimingStudy

Kick Off Technical Artist & ShaderFx - テクニカルアーティストと ShaderFXのお話
Kick Off Technical Artist & ShaderFx - テクニカルアーティストと ShaderFXのお話Kick Off Technical Artist & ShaderFx - テクニカルアーティストと ShaderFXのお話
Kick Off Technical Artist & ShaderFx - テクニカルアーティストと ShaderFXのお話AimingStudy
 
デザイナーがMELスクリプトを書いて工数削減した話
デザイナーがMELスクリプトを書いて工数削減した話デザイナーがMELスクリプトを書いて工数削減した話
デザイナーがMELスクリプトを書いて工数削減した話AimingStudy
 
剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題AimingStudy
 
3D描画基礎知識
3D描画基礎知識3D描画基礎知識
3D描画基礎知識AimingStudy
 
Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築AimingStudy
 
AWSではじめるお手軽オンラインゲーム開発
AWSではじめるお手軽オンラインゲーム開発AWSではじめるお手軽オンラインゲーム開発
AWSではじめるお手軽オンラインゲーム開発AimingStudy
 
C++のビルド高速化について
C++のビルド高速化についてC++のビルド高速化について
C++のビルド高速化についてAimingStudy
 
SVN経験者のためのGIT入門
SVN経験者のためのGIT入門SVN経験者のためのGIT入門
SVN経験者のためのGIT入門AimingStudy
 
Flashをcocos2dxで再生
Flashをcocos2dxで再生Flashをcocos2dxで再生
Flashをcocos2dxで再生AimingStudy
 
1日で始めるglsl
1日で始めるglsl1日で始めるglsl
1日で始めるglslAimingStudy
 
Adobe scoutの紹介
Adobe scoutの紹介Adobe scoutの紹介
Adobe scoutの紹介AimingStudy
 
C++によるソート入門
C++によるソート入門C++によるソート入門
C++によるソート入門AimingStudy
 

More from AimingStudy (12)

Kick Off Technical Artist & ShaderFx - テクニカルアーティストと ShaderFXのお話
Kick Off Technical Artist & ShaderFx - テクニカルアーティストと ShaderFXのお話Kick Off Technical Artist & ShaderFx - テクニカルアーティストと ShaderFXのお話
Kick Off Technical Artist & ShaderFx - テクニカルアーティストと ShaderFXのお話
 
デザイナーがMELスクリプトを書いて工数削減した話
デザイナーがMELスクリプトを書いて工数削減した話デザイナーがMELスクリプトを書いて工数削減した話
デザイナーがMELスクリプトを書いて工数削減した話
 
剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題剣と魔法のログレス(PC版)の自慢と課題
剣と魔法のログレス(PC版)の自慢と課題
 
3D描画基礎知識
3D描画基礎知識3D描画基礎知識
3D描画基礎知識
 
Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築Node.jsではじめるサーバ構築
Node.jsではじめるサーバ構築
 
AWSではじめるお手軽オンラインゲーム開発
AWSではじめるお手軽オンラインゲーム開発AWSではじめるお手軽オンラインゲーム開発
AWSではじめるお手軽オンラインゲーム開発
 
C++のビルド高速化について
C++のビルド高速化についてC++のビルド高速化について
C++のビルド高速化について
 
SVN経験者のためのGIT入門
SVN経験者のためのGIT入門SVN経験者のためのGIT入門
SVN経験者のためのGIT入門
 
Flashをcocos2dxで再生
Flashをcocos2dxで再生Flashをcocos2dxで再生
Flashをcocos2dxで再生
 
1日で始めるglsl
1日で始めるglsl1日で始めるglsl
1日で始めるglsl
 
Adobe scoutの紹介
Adobe scoutの紹介Adobe scoutの紹介
Adobe scoutの紹介
 
C++によるソート入門
C++によるソート入門C++によるソート入門
C++によるソート入門
 

Recently uploaded

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 

Recently uploaded (8)

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 

Unityと.NET