ページ「R-TYPE I (PCエンジン)」と「RenderScript」の間の差分

提供: MonoBook
(ページ間の差分)
ナビゲーションに移動 検索に移動
 
imported>Administrator
 
1行目: 1行目:
'''R-TYPE I (PCエンジン)'''とは、[[ハドソン]]から発売した[[PCエンジン]]版の[[R-TYPE]]である。
+
'''RenderScript'''とは、[[Android]]が採用、搭載している[[CUDA]]に似た[[プログラマブルシェーダー]]である。
  
Huカードに搭載するROMチップの調達の関係で「R-TYPE I」と「R-TYPE II」に分割されて発売された。なお後発となった海外版は1枚に収められて発売された。
+
== 概要 ==
 +
RenderScriptはAndroid 3.0で登場した機能で、もともとはその名前のとおり3Dレンダリングするためのものであったが、いろいろと試行錯誤を繰り返したのち、Android 4.2でそれらは廃止され、現在ではいわゆる[[OpenCL]]や[[CUDA]]などと類似する[[GPGPU]]向けの[[コンピュートシェーダー]]と2D画像処理向けの組み込み関数群というかたちに落ち着いている。
  
家庭用テレビの解像度の関係で上下にスクロールする。
+
このような歴史的背景から名前は「RenderScript」だが実質的には「ComputeScript」である。
  
オリジナルである[[アイレム]]版の[[R-TYPE]][[リバースエンジニアリング]]して開発された。
+
Androidには標準で[[CPU]][[ドライバ]]が含まれており、とりあえずAndroid 4.2以降であれば[[GPU]]がショボい端末でも動くという特徴がある。
  
メインプログラマーは和泉勇さんである。
+
Androidが採用している[[Java]]や[[Kotlin]]は[[ビットマップ]]を[[ピクセル]]単位で処理する、いわゆる「[[ポインタ]]を使ってぶん回す」系の処理には死ぬほど向いていない。それを補うのがRenderScriptであり、主に[[Java]]で書くと死ぬほど遅い[[2D]]の[[画像処理]]を書くのに使われる。[[スマホ]]のしょぼい[[GPU]]では「[[GPGPU]]だから速い」という利点はほぼなく、どちらかというと[[Java]]では記述の難しい部分を補う手法、かつ[[NDK]]([[C言語]])のように[[SoC]]に依存するものではない手法という意味合いが強い。
  
アイレム版と異なりPCエンジン版は「[[処理落ち]]」しないのが特徴。
+
==Xamarin.Android==
 +
ちなみに[[Xamarin.Android]]ではRenderScriptは一部しかサポートされておらずカスタムカーネル(独自プログラム)などは利用できない。ただXamarin.AndroidではC#がポインタをサポートしているのでRenderScriptを使わずともポインタをぶん回す方法である程度は突破できる。
  
岩崎啓眞さんが暴露してしまった。<blockquote>R-TYPEのカード版は、実はPCエンジンでは許されないモードを使っている(原理的には可能だけど使ってはいけません、という意味)。PCエンジンでは320ドットモードではスプライトが16個並ぶ設定を使ってはいけなくて、スプライトが並ぶ数は最大14個までになる。</blockquote><blockquote>なぜかというと16個並ぶ設定にするとVRAMのアクセスタイムを超えるスピードで駆動する、今でいうオーバークロック状態になり、動作保証できないからダメだったのだが、そんなことを知らない和泉さんのチームは、使ってしまったわけ。</blockquote><blockquote>発売されてから、NECが知るところになり「知らなかったし、出ちゃったからしょうがない、これだけ特例だけど、もうやっちゃダメ」とものすごく釘を刺され、以降、あらゆるROMがそうなっていないかNECがチェックするようになったという曰くつきの代物だったりする。<nowiki>http://www.highriskrevolution.com/gamelife/index.php?e=53</nowiki></blockquote>[[スーパーCD-ROM2]]で発売した[[R-TYPE COMPLETE CD]]は[[スプライト]]が16個から14個に変更され、かわりに14個以上並ぶ場合はスプライトを交互に表示することで画面はチラチラするが擬似的に最大16個表示させている。
+
==関連項目==
  
PCエンジン版のR-TYPEの広報を担当したのは後にゲームデザイナーに転身する[[桝田省治]]さんである。
+
*[[CUDA]]
 +
*[[OpenCL]]
 +
*[[DirectCompute]]
  
== 関連項目 ==
+
==参考文献==
* [[ネクタリス]]
+
 
* [[イースI・II]]
+
*https://developer.android.com/about/versions/android-3.0-highlights.html#graphic
* [[ぎゃんぶらぁ自己中心派]]
+
*https://developer.android.com/about/versions/android-4.2
 +
*https://developer.android.com/guide/topics/renderscript/compute
 +
 
 +
[[カテゴリ:画像処理]]
 +
[[カテゴリ:シェーダー]]
 +
[[カテゴリ:Android]]

2019年5月16日 (木) 04:14時点における最新版

RenderScriptとは、Androidが採用、搭載しているCUDAに似たプログラマブルシェーダーである。

概要[編集 | ソースを編集]

RenderScriptはAndroid 3.0で登場した機能で、もともとはその名前のとおり3Dレンダリングするためのものであったが、いろいろと試行錯誤を繰り返したのち、Android 4.2でそれらは廃止され、現在ではいわゆるOpenCLCUDAなどと類似するGPGPU向けのコンピュートシェーダーと2D画像処理向けの組み込み関数群というかたちに落ち着いている。

このような歴史的背景から名前は「RenderScript」だが実質的には「ComputeScript」である。

Androidには標準でCPUドライバが含まれており、とりあえずAndroid 4.2以降であればGPUがショボい端末でも動くという特徴がある。

Androidが採用しているJavaKotlinビットマップピクセル単位で処理する、いわゆる「ポインタを使ってぶん回す」系の処理には死ぬほど向いていない。それを補うのがRenderScriptであり、主にJavaで書くと死ぬほど遅い2D画像処理を書くのに使われる。スマホのしょぼいGPUでは「GPGPUだから速い」という利点はほぼなく、どちらかというとJavaでは記述の難しい部分を補う手法、かつNDKC言語)のようにSoCに依存するものではない手法という意味合いが強い。

Xamarin.Android[編集 | ソースを編集]

ちなみにXamarin.AndroidではRenderScriptは一部しかサポートされておらずカスタムカーネル(独自プログラム)などは利用できない。ただXamarin.AndroidではC#がポインタをサポートしているのでRenderScriptを使わずともポインタをぶん回す方法である程度は突破できる。

関連項目[編集 | ソースを編集]

参考文献[編集 | ソースを編集]