mieki256's diary



2021/09/21(火) [n年前の日記]

#1 [love2d] love2dでテクスチャ付きポリゴンを歪めずに描画したい。その4

love2d 11.3 上で、テクスチャ付きポリゴンを描画したい。できれば四角形を歪ませない状態で描画したい。

公式フォーラムに投稿されていた、Shaderを使って実現する Perspective.lua を、love2d 11.3 で動作するように修正してみたわけだけど。

_Textured Polygons for All! - LoVE
_Textured Polygons for All! - Page 13 - LOVE
_love2dでテクスチャ付きポリゴンを歪めずに描画したい。その3

例えば、長方形を描画する rectangle() を使う直前に、シェーダを Perspective.lua で用意したソレに切り替えれば、長方形の中身をテクスチャ付きポリゴンっぽい感じで描画できたりするのではないかと思いついたわけで…。本当にそんな結果になるのか気になったので試してみた。

以下のような感じになった。




ウインドウの下半分を rectangle() で描画する直前に、Perspective.lua 内のシェーダに切り替えてる。緑色の部分がシェーダに渡している四角形の頂点情報。パースがつくような形で頂点情報を渡しているので、rectangle() で描画する際の各ピクセルもパースがついたような見た目で描画されてる。みたいな。

ソースと使用画像は以下。

_main.lua
_conf.lua
_perspective.lua
_shader.fs
_scifitex02_tex.png
_uvcheckermap01-512.png

一応 .zip も置いときます。

_01_perspective.zip

.zip を .love にリネームして、以下を打てば実行できるはず。
love 01_perspective.love

とりあえず、こういった見た目については色々な方法で実現できそうだなと…。

_love2dで疑似ラスタスクロールを使って立体的な見た目にできるか試した
_love2dのShaderを使って某STGのアレ

love.jsでは動かなかった。 :

love.js を使ってWebブラウザ上で動かせないか試したけど、どうやら Shader/GLSL を使ったものは変換できないっぽい。出力された .html + .js を開いてみたけどエラーが出て動いてくれなかった。

以前は動いていたという話もあるらしいのだけど…。

_love.js supports shader? - LoVE

いや、よく読んでみると、やっぱり動かないみたいだな…。Shader を使うとWebブラウザ上では動かなくなると思っておいたほうがいいのだろう…。

以上です。

過去ログ表示

Prev - 2021/09 - Next
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project