2018/10/27(土) [n年前の日記]
#1 [tic80] TIC-80でラスタースクロール処理
TIC-80関係のスクリーンショット画像を眺めていたらラスタースクロールっぽい処理をしてる事例があったので、どうやったらそんな処理ができるのか少し試したり。
こんな感じかなあ…。
SCN()関数を記述すれば、y方向に1ライン描画する度に処理が呼ばれるそうで。 *1
_SCN - nesbox/TIC-80 Wiki
ちなみに、昔の版では SCN() ではなく scanline() という関数名だった模様。
また、
_poke - nesbox/TIC-80 Wiki
_RAM - nesbox/TIC-80 Wiki
しかしコレ、BGだけをラスタースクロール、みたいなことはできるのだろうか…。現状ではスプライト相当までグネグネしちゃってるけど…。
こんな感じかなあ…。
-- title: game title -- author: game developer -- desc: short description -- script: lua t=0 x=96 y=24 function TIC() if btn(0) then y=y-1 end if btn(1) then y=y+1 end if btn(2) then x=x-1 end if btn(3) then x=x+1 end cls(13) map(0,0) spr(1+t%60//30*2,x,y,14,3,0,0,2,2) print("HELLO WORLD!",84,84) t=t+1 end function SCN(row) local x,y x=8*math.cos(math.rad(3*t+4*row)) y=6*math.sin(math.rad(2*t+4*row)) poke(0x3FF9,x) poke(0x3FF9+1,y) end
SCN()関数を記述すれば、y方向に1ライン描画する度に処理が呼ばれるそうで。 *1
_SCN - nesbox/TIC-80 Wiki
ちなみに、昔の版では SCN() ではなく scanline() という関数名だった模様。
また、
- poke(0x3FF9, x方向の値)
- poke(0x3FF9+1, y方向の値)
_poke - nesbox/TIC-80 Wiki
_RAM - nesbox/TIC-80 Wiki
しかしコレ、BGだけをラスタースクロール、みたいなことはできるのだろうか…。現状ではスプライト相当までグネグネしちゃってるけど…。
◎ OVR()を使って分離。 :
OVR() という関数を記述すれば、SCN() で描画した後から別の何かを描画できる ―― SCN() の処理とは分離した描画ができるらしい。
コレを使えば、BGだけラスタースクロールをして、スプライトは処理をかけない、ということもできる模様。
_OVR - nesbox/TIC-80 Wiki
このソースの例では、OVR() 内でスプライト相当の描画+文字描画をしているので、そこだけはラスタースクロールしない状態になっている。
一応ブラウザ上でも動くソレも置いてみたり。
_rasterttest02.tic.html
コレを使えば、BGだけラスタースクロールをして、スプライトは処理をかけない、ということもできる模様。
_OVR - nesbox/TIC-80 Wiki
-- title: game title -- author: game developer -- desc: short description -- script: lua t=0 x=96 y=24 function TIC() if btn(0) then y=y-1 end if btn(1) then y=y+1 end if btn(2) then x=x-1 end if btn(3) then x=x+1 end cls(13) map(0,0) t=t+1 end function SCN(row) local x,y x=8*math.cos(math.rad(3*t+4*row)) y=6*math.sin(math.rad(2*t+4*row)) poke(0x3FF9,x) poke(0x3FF9+1,y) end function OVR() spr(1+t%60//30*2,x,y,14,3,0,0,2,2) print("HELLO WORLD!",84,84) end
このソースの例では、OVR() 内でスプライト相当の描画+文字描画をしているので、そこだけはラスタースクロールしない状態になっている。
一応ブラウザ上でも動くソレも置いてみたり。
_rasterttest02.tic.html
*1: もしかすると、TIC() で画面に描画する内容を作ってから、画面描画用のバッファに、SCN() でy方向に1ラインずつ転送している…のかな…。
[ ツッコむ ]
#2 [tv] NHKドラマ「フェイクニュース」を視聴
先週が前編、今週が後編として放送されてたものを視聴。たまたまTVをつけっぱなしにしていたら流れていたので、そのまま見てしまったパターンなのだけど。
面白かった。とにかく脚本が良いなと。どんでん返しもあったし、フツーのドラマならこうくるだろう、という流れを裏切る展開も用意されていたりして、結果、現状の混沌ぶりをかなり表現できていたような気がしたり。
前編を見た際は、ネット利用者の姿がかなり悪意を持って描かれてるように感じてしまって、これはちょっとどうなんだろうと思ってしまったけれど。後編まで通してみるとマスコミ批判にまで踏み込んでいたりもして、なんというか…結局皆、同じ穴の狢になってしまっているのかもしれないと感じられるような作りになっていた気もするわけで。
劇中では青虫が出てくるけれど。アレはインターネット、もしくはネット利用者、あるいは人類の暗喩になっていたのかもしれないなと。まだまだ自分達は、色んな面で幼虫の状態なのだろう…。いずれ蛹になって羽化するかもしれないけれど、その時は、どんな姿、どんな光景になっているのだろうか。それともまさか、このまま幼虫として、一生を終えてしまうのだろうか…。
何にせよ、面白いドラマだったなと。視聴できて良かった。ラッキーだった。
面白かった。とにかく脚本が良いなと。どんでん返しもあったし、フツーのドラマならこうくるだろう、という流れを裏切る展開も用意されていたりして、結果、現状の混沌ぶりをかなり表現できていたような気がしたり。
前編を見た際は、ネット利用者の姿がかなり悪意を持って描かれてるように感じてしまって、これはちょっとどうなんだろうと思ってしまったけれど。後編まで通してみるとマスコミ批判にまで踏み込んでいたりもして、なんというか…結局皆、同じ穴の狢になってしまっているのかもしれないと感じられるような作りになっていた気もするわけで。
劇中では青虫が出てくるけれど。アレはインターネット、もしくはネット利用者、あるいは人類の暗喩になっていたのかもしれないなと。まだまだ自分達は、色んな面で幼虫の状態なのだろう…。いずれ蛹になって羽化するかもしれないけれど、その時は、どんな姿、どんな光景になっているのだろうか。それともまさか、このまま幼虫として、一生を終えてしまうのだろうか…。
何にせよ、面白いドラマだったなと。視聴できて良かった。ラッキーだった。
[ ツッコむ ]
以上、1 日分です。