Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
MASA_T_O
PPTX, PDF
4,347 views
ゲーム組み込み用スクリプト言語を作ってみた
C#のExpressionTreeを使って作成したスクリプト言語の簡単な紹介
Technology
◦
Read more
3
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 20
2
/ 20
3
/ 20
4
/ 20
5
/ 20
6
/ 20
7
/ 20
8
/ 20
9
/ 20
10
/ 20
11
/ 20
12
/ 20
13
/ 20
14
/ 20
15
/ 20
16
/ 20
17
/ 20
18
/ 20
19
/ 20
20
/ 20
More Related Content
PPTX
ゲーム組み込み向け独自スクリプト言語の設計で気を付けている事
by
Shun Moriya
PDF
磯野ー!Dartやろうぜー!
by
uka yare
PPTX
二求の塾 プログラミング講座(2019-08-10)
by
Atsuo Yamasaki
PPTX
はじめてのChu カッコカリ
by
Masuda Tomoaki
PDF
30分で作ってRubyを体感資料
by
松本 雄貴
PPTX
Programming school 02
by
Masato Nakajima
PDF
スクリプト・プログラマー宣言
by
kanemu
PDF
金大アルゴリズム勉強会#007資料
by
Takumi Murano
ゲーム組み込み向け独自スクリプト言語の設計で気を付けている事
by
Shun Moriya
磯野ー!Dartやろうぜー!
by
uka yare
二求の塾 プログラミング講座(2019-08-10)
by
Atsuo Yamasaki
はじめてのChu カッコカリ
by
Masuda Tomoaki
30分で作ってRubyを体感資料
by
松本 雄貴
Programming school 02
by
Masato Nakajima
スクリプト・プログラマー宣言
by
kanemu
金大アルゴリズム勉強会#007資料
by
Takumi Murano
What's hot
PDF
議論を描く技術「ファシリテーショングラフィック」
by
nishikawa_makoto7
PDF
メタプログラミングでExcel仕様書よさらば
by
Kouji Matsui
PDF
シナリオレビューという手法の提案
by
tuna cook
PDF
オンライン英会話のモチベーション維持!
by
civicpg
PPTX
Javaプログラミング入門【第1回】
by
Yukiko Kato
PPTX
Developers Summit 2014 【13-D-7】 コミュニティLT - Story 5. 「新人技術者にどうプログラミングを教えたか」
by
Fujio Kojima
PPTX
複数人でSwift開発を行うには
by
Yuya Fujiwara
PDF
プログラミング言語は怖くない
by
Shoichi Matsuda
PDF
平成26年度 マルチメディア研究同好会 ゲーム/コンピューター班 新入会員の指導・活動予定の概要
by
Multimedia Research Club (TMCIT)
PDF
CodingTips+ 基礎編
by
Yusuke Ito
PPTX
WordPress 3.8 RC1
by
BREN
PDF
JS/Canvas Tutorial1
by
秀俊 伊藤
PPTX
JXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオン
by
Tomohiro Suzuki
PPTX
The Steps of Programming
by
shundroidk
PPTX
アクセサリ部
by
Tatsuya Iwanari
PPTX
Intelli code
by
m ishizaki
PDF
プログラミング教室 シーズン1
by
Yu Kohase
PPTX
第0回プログラミング講座
by
happo31
PPTX
初心者目線でIo t
by
Makoto Nishimura
議論を描く技術「ファシリテーショングラフィック」
by
nishikawa_makoto7
メタプログラミングでExcel仕様書よさらば
by
Kouji Matsui
シナリオレビューという手法の提案
by
tuna cook
オンライン英会話のモチベーション維持!
by
civicpg
Javaプログラミング入門【第1回】
by
Yukiko Kato
Developers Summit 2014 【13-D-7】 コミュニティLT - Story 5. 「新人技術者にどうプログラミングを教えたか」
by
Fujio Kojima
複数人でSwift開発を行うには
by
Yuya Fujiwara
プログラミング言語は怖くない
by
Shoichi Matsuda
平成26年度 マルチメディア研究同好会 ゲーム/コンピューター班 新入会員の指導・活動予定の概要
by
Multimedia Research Club (TMCIT)
CodingTips+ 基礎編
by
Yusuke Ito
WordPress 3.8 RC1
by
BREN
JS/Canvas Tutorial1
by
秀俊 伊藤
JXUG Windowsアプリを開発している皆さん、C#でスマホアプリ開発を試してみませんか?ハンズオン
by
Tomohiro Suzuki
The Steps of Programming
by
shundroidk
アクセサリ部
by
Tatsuya Iwanari
Intelli code
by
m ishizaki
プログラミング教室 シーズン1
by
Yu Kohase
第0回プログラミング講座
by
happo31
初心者目線でIo t
by
Makoto Nishimura
Recently uploaded
PDF
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」
by
嶋 是一 (Yoshikazu SHIMA)
PDF
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信
by
e-Patent Co., Ltd.
PDF
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望
by
CRI Japan, Inc.
PDF
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis
by
akipii ogaoga
PDF
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector
by
akipii ogaoga
PPTX
ddevについて .
by
iPride Co., Ltd.
PDF
2025→2026宙畑ゆく年くる年レポート_100社を超える企業アンケート総まとめ!!_企業まとめ_1229_3版
by
sorabatake
PDF
Drupal Recipes 解説 .
by
iPride Co., Ltd.
PDF
さくらインターネットの今 法林リージョン:さくらのAIとか GPUとかイベントとか 〜2026年もバク進します!〜
by
法林浩之
第21回 Gen AI 勉強会「NotebookLMで60ページ超の スライドを作成してみた」
by
嶋 是一 (Yoshikazu SHIMA)
100年後の知財業界-生成AIスライドアドリブプレゼン イーパテントYouTube配信
by
e-Patent Co., Ltd.
Starlink Direct-to-Cell (D2C) 技術の概要と将来の展望
by
CRI Japan, Inc.
Reiwa 7 IT Strategist Afternoon I Question-1 3C Analysis
by
akipii ogaoga
Reiwa 7 IT Strategist Afternoon I Question-1 Ansoff's Growth Vector
by
akipii ogaoga
ddevについて .
by
iPride Co., Ltd.
2025→2026宙畑ゆく年くる年レポート_100社を超える企業アンケート総まとめ!!_企業まとめ_1229_3版
by
sorabatake
Drupal Recipes 解説 .
by
iPride Co., Ltd.
さくらインターネットの今 法林リージョン:さくらのAIとか GPUとかイベントとか 〜2026年もバク進します!〜
by
法林浩之
ゲーム組み込み用スクリプト言語を作ってみた
1.
ゲーム組み込み用スクリ プト言語を作ってみた 2013年6月1日
2.
目次 目的 言語仕様策定
作る 作った
3.
目的 細かい調整するにはスクリプト言語がいい 小規模なロジックをたくさん書くのに便利
既存言語調べるのめんどくさい 作るの楽しそう
4.
言語仕様策定
5.
基本事項 言語の開発はC#で 動作環境もC#で
1フレームで数百回走らせられる速度 コンパイル型にする
6.
方針 単純な命令は書きやすく 括弧なしでのメソッド呼び出し
オーバーロードを簡単に 名前付き引数的機能 手続き型っぽく 実装の簡単化 1種類のオブジェクトにつき1本のスクリプト
7.
実際のスクリプト 実演
8.
スクリプトでパーティクル制御
9.
作る
10.
処理の流れ ソースの文字列の読み込み プリプロセッサ
文字列をトークン分割(スキャナ) トークン : スペースで区切られた単語や改行文字 トークン列を構文に整理(パーサ) 構文を実行可能形式に変換(プロセッサ) 実行
11.
ソースの読み込み 普通のファイル読み込み 暗号化して固めたデータからの読み込みも別 途サポートした
12.
プリプロセッサ 定数定義の#defineと単純な#includeをサポー ト 入力ソースを適当に置換して実装
13.
スキャナ 入力文字列をスペースでトークンに分割 手抜き
トークンを型付けする 数値リテラルはfloat値に 演算子やタブ、改行などは対応する列挙体に その他は文字列に トークンの配列を返す
14.
パーサ コメント部分を除去 トークン列を改行を目印に行に分割
行にインデントの深さも与える 行内のカッコを再帰的にまとめる カッコで括られた部分を一塊のオブジェクト に
15.
プロセッサ基本方針 .NETのExpression Treeというライブラリを使 用
式の木構造をオブジェクトで組んでコンパイ ルすると、そのまま実行可能な無名関数を返 す! 本体側のメソッド呼び出しにはリフレクショ ンを活用
16.
プロセッサ準備 本体側のメソッドやプロパティを呼び出す準 備 1つの型につき1つの「識別子-メソッド情報」 辞書
全ての型で1つ、グローバル関数の辞書も用意
17.
プロセッサ1 トップレベルの文を1つずつパース トップレベルの文=必ず実行される文
文がどの構文かをチェック 最初の1、2単語を見て判断可能 制御文、代入文、宣言文でなければメソッド呼び 出し 実行中に使う数値型は基本的に全てfloat
18.
作った
19.
速度テスト float i =
0; float j = 0; while (i < 1000){ j = 0; while (j < 1000){ j++; } i++; } というコードを最適化なしで実行 C#ネイティブ: 10k ticks(2-3ms) スクリプト: 16k ticks(4ms)
20.
速度テスト2 中身が空で1引数のC#側関数を40万回呼び出 し C#ネイティブ:12ms
スクリプト:57ms 動的な呼び出しなのでやや遅い
Download