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

Unityでパフォーマンスの良いUIを作る為のTips
Unityでパフォーマンスの良いUIを作る為のTipsUnityでパフォーマンスの良いUIを作る為のTips
Unityでパフォーマンスの良いUIを作る為のTipsUnity Technologies Japan K.K.
 
Unityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconUnityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconDeNA
 
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜Unity Technologies Japan K.K.
 
大規模ゲーム開発における build 高速化と安定化
大規模ゲーム開発における build 高速化と安定化大規模ゲーム開発における build 高速化と安定化
大規模ゲーム開発における build 高速化と安定化DeNA
 
UE4のためのより良いゲーム設計を理解しよう!
UE4のためのより良いゲーム設計を理解しよう!UE4のためのより良いゲーム設計を理解しよう!
UE4のためのより良いゲーム設計を理解しよう!Masahiko Nakamura
 
UniTask入門
UniTask入門UniTask入門
UniTask入門torisoup
 
Assembly Definition あれやこれ
Assembly Definition あれやこれAssembly Definition あれやこれ
Assembly Definition あれやこれNakanoYosuke1
 
インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021Unity Technologies Japan K.K.
 
若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発Hirohito Morinaga
 
【Unity】 Behavior TreeでAIを作る
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作るtorisoup
 
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!Unity Technologies Japan K.K.
 
ガルガンチュア on Oculus Quest - 72FPSへの挑戦 -
ガルガンチュア on Oculus Quest - 72FPSへの挑戦 -ガルガンチュア on Oculus Quest - 72FPSへの挑戦 -
ガルガンチュア on Oculus Quest - 72FPSへの挑戦 -Takehito Gondo
 
Unityではじめるオープンワールド入門 アーティスト編
Unityではじめるオープンワールド入門 アーティスト編Unityではじめるオープンワールド入門 アーティスト編
Unityではじめるオープンワールド入門 アーティスト編Unity Technologies Japan K.K.
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編infinite_loop
 

What's hot (20)

アーティストの為のプロファイル入門!~楽しいRenderDocの使い方~
アーティストの為のプロファイル入門!~楽しいRenderDocの使い方~アーティストの為のプロファイル入門!~楽しいRenderDocの使い方~
アーティストの為のプロファイル入門!~楽しいRenderDocの使い方~
 
Unityでパフォーマンスの良いUIを作る為のTips
Unityでパフォーマンスの良いUIを作る為のTipsUnityでパフォーマンスの良いUIを作る為のTips
Unityでパフォーマンスの良いUIを作る為のTips
 
Unityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechconUnityネイティブプラグインマニアクス #denatechcon
Unityネイティブプラグインマニアクス #denatechcon
 
猫でも分かるUMG
猫でも分かるUMG猫でも分かるUMG
猫でも分かるUMG
 
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜
 
Unreal Engine 4.27 ノンゲーム向け新機能まとめ
Unreal Engine 4.27 ノンゲーム向け新機能まとめUnreal Engine 4.27 ノンゲーム向け新機能まとめ
Unreal Engine 4.27 ノンゲーム向け新機能まとめ
 
大規模ゲーム開発における build 高速化と安定化
大規模ゲーム開発における build 高速化と安定化大規模ゲーム開発における build 高速化と安定化
大規模ゲーム開発における build 高速化と安定化
 
UIElements+UI BuilderでEditor拡張を作ろう
UIElements+UI BuilderでEditor拡張を作ろうUIElements+UI BuilderでEditor拡張を作ろう
UIElements+UI BuilderでEditor拡張を作ろう
 
UE4のためのより良いゲーム設計を理解しよう!
UE4のためのより良いゲーム設計を理解しよう!UE4のためのより良いゲーム設計を理解しよう!
UE4のためのより良いゲーム設計を理解しよう!
 
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
 
UniTask入門
UniTask入門UniTask入門
UniTask入門
 
Assembly Definition あれやこれ
Assembly Definition あれやこれAssembly Definition あれやこれ
Assembly Definition あれやこれ
 
インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021
 
若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発
 
【Unity】 Behavior TreeでAIを作る
 【Unity】 Behavior TreeでAIを作る 【Unity】 Behavior TreeでAIを作る
【Unity】 Behavior TreeでAIを作る
 
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
 
ガルガンチュア on Oculus Quest - 72FPSへの挑戦 -
ガルガンチュア on Oculus Quest - 72FPSへの挑戦 -ガルガンチュア on Oculus Quest - 72FPSへの挑戦 -
ガルガンチュア on Oculus Quest - 72FPSへの挑戦 -
 
Unityではじめるオープンワールド入門 アーティスト編
Unityではじめるオープンワールド入門 アーティスト編Unityではじめるオープンワールド入門 アーティスト編
Unityではじめるオープンワールド入門 アーティスト編
 
UE4のスレッドの流れと Input Latency改善の仕組み
UE4のスレッドの流れとInput Latency改善の仕組みUE4のスレッドの流れとInput Latency改善の仕組み
UE4のスレッドの流れと Input Latency改善の仕組み
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
 

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スペシャル補足資料小林 信行
 
Unity dojo amplifyshadereditor101_jpn-jp
Unity dojo amplifyshadereditor101_jpn-jpUnity dojo amplifyshadereditor101_jpn-jp
Unity dojo amplifyshadereditor101_jpn-jp小林 信行
 
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 (11)

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スペシャル補足資料
 
Unity dojo amplifyshadereditor101_jpn-jp
Unity dojo amplifyshadereditor101_jpn-jpUnity dojo amplifyshadereditor101_jpn-jp
Unity dojo amplifyshadereditor101_jpn-jp
 
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

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
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
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
 
論文紹介: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
 
論文紹介: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
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介: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
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 

Recently uploaded (9)

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」の紹介
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
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
 
論文紹介: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
 
論文紹介: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...
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介: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
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 

Unityと.NET