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
mgwsuzuki
301 views
Hardwre Sprite controled by mruby
published at okinawarb, apr/11
Technology
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 11
2
/ 11
3
/ 11
4
/ 11
5
/ 11
6
/ 11
7
/ 11
8
/ 11
9
/ 11
10
/ 11
11
/ 11
More Related Content
PPTX
FPGAでベンチマークしたときに苦労した話@fpgax#12
by
Jun Ando
PDF
「招待講演:ACRi ルームの小さな FPGA ボードで何がどこまでできるか」
by
直久 住川
PPTX
80年代ゲーム機の技術をFPGAに実装してみた
by
mgwsuzuki
PDF
ACRiウェビナー_GIGABYTE様ご講演資料
by
直久 住川
PDF
ACRiウェビナー_ChipTip Technology様ご講演資料
by
直久 住川
PDF
ACRi_webinar_20220118_miyo
by
Takefumi MIYOSHI
PPTX
Gobotについて
by
Jun Ichikawa
PPTX
Deep (cheap) learning using fpga
by
SAKURAI, Atsushi
FPGAでベンチマークしたときに苦労した話@fpgax#12
by
Jun Ando
「招待講演:ACRi ルームの小さな FPGA ボードで何がどこまでできるか」
by
直久 住川
80年代ゲーム機の技術をFPGAに実装してみた
by
mgwsuzuki
ACRiウェビナー_GIGABYTE様ご講演資料
by
直久 住川
ACRiウェビナー_ChipTip Technology様ご講演資料
by
直久 住川
ACRi_webinar_20220118_miyo
by
Takefumi MIYOSHI
Gobotについて
by
Jun Ichikawa
Deep (cheap) learning using fpga
by
SAKURAI, Atsushi
What's hot
PPTX
FPGAで遊んでみた
by
Akira Kaneda
PPTX
Microsemi FPGAで RISC-V を動かしてみた話 (Lチカ)
by
Takayasu Shibata
PDF
DAS_202109
by
Takefumi MIYOSHI
PDF
Acri webn04 lt_iwi_配布
by
直久 住川
PDF
Arduino、Raspberry Pi、PIC 入門以前(NSEG 2014-04-19)
by
hiro345
PPTX
AI Carの要約
by
Tsuyoshi Horigome
PDF
5月中旬の仮想通貨Re-orgについて
by
Masanori Kusunoki
PDF
RHTN2018: エンジニアは何故、技術書を書くのか? 執筆のススメ
by
Taira Hajime
PDF
Fuji sakuraでmbedを!
by
Tetsuya Noguchi
FPGAで遊んでみた
by
Akira Kaneda
Microsemi FPGAで RISC-V を動かしてみた話 (Lチカ)
by
Takayasu Shibata
DAS_202109
by
Takefumi MIYOSHI
Acri webn04 lt_iwi_配布
by
直久 住川
Arduino、Raspberry Pi、PIC 入門以前(NSEG 2014-04-19)
by
hiro345
AI Carの要約
by
Tsuyoshi Horigome
5月中旬の仮想通貨Re-orgについて
by
Masanori Kusunoki
RHTN2018: エンジニアは何故、技術書を書くのか? 執筆のススメ
by
Taira Hajime
Fuji sakuraでmbedを!
by
Tetsuya Noguchi
Similar to Hardwre Sprite controled by mruby
PDF
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
by
Drecom Co., Ltd.
PPTX
CEDEC2017 VR180 3D live streaming camera at "SHOWROOM" case
by
Takeyuki Ogura
PDF
【Unite Tokyo 2019】〈七つの大罪〉をゲームで!高品質グラフィックを具現化するための技法と開発最適化のご紹介
by
UnityTechnologiesJapan002
PDF
「さくらのINFRA WARS」で 利用されている技術
by
townewgokgok
PDF
改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~
by
Web Technology Corp.
PDF
Windowsフォームで大丈夫か?一番良いのを頼む。
by
Yuya Yamaki
PDF
超連射68K 開発日記 -弾幕世代以前の90年代 STG のこと-
by
IGDA Japan
PDF
ALGYAN 「俺の若けぇ頃はなぁ」とFM-7を語る 争奪、くたばっちまえ賞!老害エンジニアLT合戦!
by
Tomokazu Kizawa
PDF
IbisPaintのOpenGLES2.0
by
Eiji Kamiya
PDF
Designing video game hardware in verilog
by
Atsuki Takahashi
PPTX
FPGAでゲーム機を作ろう! 第6回
by
yoshimitsusudoh
PDF
20分で理解するdisplaysystem
by
magoroku Yamamoto
PDF
Seeing is Believing
by
Shibao Kouichiro
PDF
Virtual Realty for Entertainment - 文化・言語背景を 文化・言語背景を超えた環境における国際的エンタテイメントシステムデザイン
by
Akihiko Shirai
PPTX
3Dリッチコンテンツビジネス活用のご提案ver3.1
by
CRI Japan, Inc.
PPTX
3Dリッチコンテンツビジネス活用のご提案ver3.1
by
ITDORAKU
PDF
3Dリッチコンテンツビジネス活用のご提案ver3.1
by
ITDORAKU
PPT
Html5conference2012 yota hisamichi_世界に向けたスマートフォンゲームを支える、 greeのテクニカルアーティストについて。
by
ひさし App
PPT
週末プログラミングで作るカジュアルゲーム~レーシング編~
by
Nohina Hidenari
PDF
海外アプリ研究帳 Vol.02_Draw Rider
by
Tomoharu Fukushima
CEDEC 2016 Metal と Vulkan を用いた水彩画レンダリング技法の紹介
by
Drecom Co., Ltd.
CEDEC2017 VR180 3D live streaming camera at "SHOWROOM" case
by
Takeyuki Ogura
【Unite Tokyo 2019】〈七つの大罪〉をゲームで!高品質グラフィックを具現化するための技法と開発最適化のご紹介
by
UnityTechnologiesJapan002
「さくらのINFRA WARS」で 利用されている技術
by
townewgokgok
改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~
by
Web Technology Corp.
Windowsフォームで大丈夫か?一番良いのを頼む。
by
Yuya Yamaki
超連射68K 開発日記 -弾幕世代以前の90年代 STG のこと-
by
IGDA Japan
ALGYAN 「俺の若けぇ頃はなぁ」とFM-7を語る 争奪、くたばっちまえ賞!老害エンジニアLT合戦!
by
Tomokazu Kizawa
IbisPaintのOpenGLES2.0
by
Eiji Kamiya
Designing video game hardware in verilog
by
Atsuki Takahashi
FPGAでゲーム機を作ろう! 第6回
by
yoshimitsusudoh
20分で理解するdisplaysystem
by
magoroku Yamamoto
Seeing is Believing
by
Shibao Kouichiro
Virtual Realty for Entertainment - 文化・言語背景を 文化・言語背景を超えた環境における国際的エンタテイメントシステムデザイン
by
Akihiko Shirai
3Dリッチコンテンツビジネス活用のご提案ver3.1
by
CRI Japan, Inc.
3Dリッチコンテンツビジネス活用のご提案ver3.1
by
ITDORAKU
3Dリッチコンテンツビジネス活用のご提案ver3.1
by
ITDORAKU
Html5conference2012 yota hisamichi_世界に向けたスマートフォンゲームを支える、 greeのテクニカルアーティストについて。
by
ひさし App
週末プログラミングで作るカジュアルゲーム~レーシング編~
by
Nohina Hidenari
海外アプリ研究帳 Vol.02_Draw Rider
by
Tomoharu Fukushima
More from mgwsuzuki
PDF
3 dプリンタの使い方
by
mgwsuzuki
PDF
カッティングプロッタの使い方
by
mgwsuzuki
PDF
レーザーカッターを使おう
by
mgwsuzuki
PDF
PIC RoR Heroku
by
mgwsuzuki
PDF
3Dプリンタを使おう - 20131110
by
mgwsuzuki
PDF
IR remocon
by
mgwsuzuki
PDF
最近一年間で作ったもの
by
mgwsuzuki
3 dプリンタの使い方
by
mgwsuzuki
カッティングプロッタの使い方
by
mgwsuzuki
レーザーカッターを使おう
by
mgwsuzuki
PIC RoR Heroku
by
mgwsuzuki
3Dプリンタを使おう - 20131110
by
mgwsuzuki
IR remocon
by
mgwsuzuki
最近一年間で作ったもの
by
mgwsuzuki
Recently uploaded
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):東京大学情報基盤センター テーマ1/2/3「Society5.0の実現を目指す『計算・データ・学習...
by
PC Cluster Consortium
PDF
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
PDF
基礎から学ぶ PostgreSQL の性能監視 (PostgreSQL Conference Japan 2025 発表資料)
by
NTT DATA Technology & Innovation
PDF
第25回FA設備技術勉強会_自宅で勉強するROS・フィジカルAIアイテム.pdf
by
TomohiroKusu
PDF
visionOS TC「新しいマイホームで過ごすApple Vision Proとの新生活」
by
Sugiyama Yugo
PPTX
DrupalCon Nara 2025の記録 .
by
iPride Co., Ltd.
PCCC25(設立25年記念PCクラスタシンポジウム):東京大学情報基盤センター テーマ1/2/3「Society5.0の実現を目指す『計算・データ・学習...
by
PC Cluster Consortium
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
by
たけおか しょうぞう
基礎から学ぶ PostgreSQL の性能監視 (PostgreSQL Conference Japan 2025 発表資料)
by
NTT DATA Technology & Innovation
第25回FA設備技術勉強会_自宅で勉強するROS・フィジカルAIアイテム.pdf
by
TomohiroKusu
visionOS TC「新しいマイホームで過ごすApple Vision Proとの新生活」
by
Sugiyama Yugo
DrupalCon Nara 2025の記録 .
by
iPride Co., Ltd.
Hardwre Sprite controled by mruby
1.
ノスタルジックな スプライト機能とmruby @mgwsuzuki 2018/4/11 @mgwsuzuki 1
2.
Arty Z7にスプライト表示機能を実装した • Arty
Z7 • Arm Cortex-A9を内蔵したFPGAを搭載 • HDMI出力ができる • 秋月電子で購入可能(2万円台) 2018/4/11 @mgwsuzuki 2
3.
FPGA • デジタル回路をプログラミングできるLSI • verilogやVHDLといったハードウェア記述言語(HDL)で設計 •
スピードや回路規模を無視すればCPUやGPUを作ることも可能 • Arty Z7搭載のFPGAはXilinx社から無償の開発ツールをダウンロードして開発できる 2018/4/11 @mgwsuzuki 3
4.
スプライト • 80年代ゲーム機(ex:スーパーファミコン)で使われた画像表示技術 • ドット絵のキャラクタ •
ノスタルジックな技術 位置:x0, y0 キャラ: id0 位置:x2, y2 キャラ: id2 スプライトごとに位置とキャラクタ指 定したら後はハードウェアが自動的 に画像を作ってくれる 2018/4/11 @mgwsuzuki 4
5.
実装した回路のスペック 本回路 スーパーファミコン X68000 解像度
1024x768 256x224(?) 256x256~1024x768(16色) スプライト表示可能色数 32768 32768から16色x8パレット 65536から16色x16パレット 最大スプライト数 1024 128 128 最大横表示スプライト数 80(min) 32 32 スプライトサイズ 16x16 8x8,16x16,32x32,64x64 16x16 ※スプライト機能に絞ったスペックを調べたつもりだけど、よくわからんです 2018/4/11 @mgwsuzuki 5
6.
ラインバッファ方式による画像生成 • 何か書こうと思ったけどマニアックなので割愛 • 画面の横方向1ラインごとに表示画像をレンダリングするイメージ •
KByte単位のメモリ量で頑張ってリッチな画像表現を!! • なにせ1980年代の技術なので… • GPUのメモリはGB単位、クロック周波数もGHz単位の昨今、こんな技 術にこだわるのは酔狂 2018/4/11 @mgwsuzuki 6
7.
実機動作 • 1024個のスプライトの同時表示 2018/4/11 @mgwsuzuki
7
8.
1024個のスプライトが飛び回る • Cによる実装 • 1スプライトあたり8byteのデータを書き換えればよい •
でも、Cじゃ面倒くさくない? • インタプリタ的なものが欲しい • スプライト機能はオブジェクト指向と相性いいのでは?(知らんけど) • mrubyを組み込んでみよう!! 2018/4/11 @mgwsuzuki 8
9.
mruby • mruby-1.4 • ホストはwindows •
クロスコンパイル先はZynq 7000シリーズのOS無し • arm-none-eabi • ツールチェインはXilinx社のXSDKを拝借 • mruby本体だけではなく、compilerとインタラクティブUIであるmirbも 組み込んだ 2018/4/11 @mgwsuzuki 9
10.
mrubyとハードウェアのインターフェイス • SpriteElem, Sprite,
Sprite::updateはmrbgemで記述 class SpriteElem attr_accessor :y, :x, :c_id, :op attr_reader :s_id def initialize(sprite_id) @s_id = sprite_id @y = -16 #表示位置x @x = 0 #表示位置y @c_id = 0 #表示キャラ指定 @op = 0 end end class Sprite attr_accessor :sobj def initialize(size) #size: 使いたいスプライト数 @sobj = Array.new(size) size.times {|n| @sobj[n] = SpriteElem.new(n) } end end #使い方 $sp = Sprite.new(64) #同時に64個のスプライトを使う $sp.sobj[0].x = 100 #スプライト0の座標指定 $sp.sobj[0].y = 120 $sp.update #ハードウェアへ書き込み 2018/4/11 @mgwsuzuki 10
11.
スプライトに動きをつける • 1秒に60回、画面を書き終えるたびにCPUへ割り込みが入る • ユーザはcv_isr(sw)というメソッドを定義することで割りこみのたびにスプライトの 位置を更新する •
引数swはボード上のスイッチの状態を示しており、これに応じてスプライトの動き を変化させることもできる #mrubyにあらかじめ定義する def cv_isr_base(sw) if respond_to?(:cv_isr) #cv_isrメソッドが定義されていたら return cv_isr(sw) #コールする else return nil end end // Cからmrubyのcv_isr_baseというメソッドをコールする mrb_funcall(mrb, mrb_top_self(mrb), "cv_isr_base", 1,mrb_fixnum_value(sw_btn)); # スプライトの位置を更新する def cv_isr(sw) $sp.sobj[0].x += 1 $sp.sobj[0].y = 100 $sp.update end 2018/4/11 @mgwsuzuki 11
Download