mieki256's diary



2023/09/08(金) [n年前の日記]

#1 [hsp] 疑似3D道路その5

_昨日 の続き。HSP 3.6 を使って、疑似3D道路が作れないか試しているところ。環境は Windows10 x64 22H2。

ビルボード(スプライト相当)用に使えそうな画像を多少は作れたので、ビルボード描画処理も付け加えてみた。こんな感じになった。




ちなみに、ビルボードと言うのは、日本語だと「立て看板」になるのかな…。この手のプログラムでは、常にカメラを向いているポリゴンのことをビルボードと呼ぶ。まあ、今回は、単にz値に応じて拡大縮小するスプライト相当なのだけど…。

ビルボードについては、以下のページの解説が分かりやすいかもしれない。

_【ゲーム】ビルボード

ソース :

ソースコードは以下。

_road04.hsp
_road04.hsp (色分け表示)

ソースが長くなってきたので、この日記ページにコピペするのは厳しくなってきた…。色分け表示してくれる JavaScript、 _HSP Syntax Highlight を使わせてもらって、別のhtml として置いてみたけど、表示出来ているだろうか。

使用画像は以下。.hsp と同じフォルダ階層に置いておく。

bg_bg0.png
_bg_bg0.png

bg_bg1.png
_bg_bg1.png

trees.png
_trees.png

ビルボード用画像は自作したものなので、自由に使ってください。CC0 / Public Domain ってことで。

今回やったこと :

各ビルボードは、1つのセグメントにつき、1枚のビルボードを持てるように管理してる。もしかすると、道路の右、左、真ん中に、ビルボードを持てるようにしたほうがいいのかもしれないけれど…。参考にしたページでは、そういう感じでデータを持っているようだし…。

_Creating a pseudo 3D racer - part 2


ビルボード(スプライト)の拡大縮小描画は、gzoom を使っている。そのあたりは、以前書いたサンプルその他が参考になるはず。

_HSPのgzoomで透明色があるように見せかけるソレについて


今まで、各セグメントは手前から奥に向かって描画していたのだけど。ビルボードを描画する際は、奥から手前に向けて描画していくほうが都合がいい。遠くにあるビルボードと、近くにあるビルボードが重なった時、近くにあるビルボードで遠くにあるビルボードを上書き・塗り潰したほうが見た目がそれっぽくなる。

about_billboard_ss01.png

そこで、セグメントの描画についても、奥から手前に向かって描画していくように変更してみた。ただ、各セグメントの位置や形を求めるためには、手前から奥に向かって計算していかないといけないので、一旦、手前から奥に向かって計算してみて、そこで得られたセグメントの台形相当の形をバッファに記録しておいて、それを描画時に奥から手前に向けて描画する、という処理にしてある。

課題 :

今のところ、各ビルボードは、256x256のサイズで決め打ちして処理しているけれど。ビルボードの形によっては、横長、縦長、小さくても済むモノ、大きくないと困るモノ、色々あるので…。サイズは固定にしないで、どのビルボードがテクスチャ内のどの範囲なのか指定するデータを別途持って、それぞれ違うサイズで管理したほうがいいのかもしれない。

60FPSで動かしたら、CPU Ryzen 5 5600X の環境でも処理落ちしてる感じになってしまった。タスクマネージャで確認したら、CPUコア1つ分が負荷100%に近い。30FPSにすれば、まあ、なんとか…。おそらくだけど、各ビルボードの拡大描画で重くなってるのかなと。一旦、各ビルボードの全ドットをまるっと拡大描画して、そこから画面にコピーしてるあたりで無駄な処理をしてるはず。実際に画面に描画される範囲を考慮して、元画像内の適切な範囲を、適切なサイズに拡大描画すれば処理の重さも改善されるかもしれない。 *1

画像素材 :

せっかくだから、ビルボード用画像の元画像も置いておきます。使えそうなら自由に使ってください。CC0 / Public Domain ってことで。

beam01_1024x1024.png
_beam01_1024x1024.png

grass02_edit02.png
_grass02_edit02.png

grass07_edit01.png
_grass07_edit01.png

roadsign_board.png
_roadsign_board.png

roadsign_board_and_pole.png
_roadsign_board_and_pole.png


余談。草むらを作りたくて、久々に Vue 5 Easel を起動して作業した。使い方を忘れていて時間がかかった上に、なかなか望み通りの画像は得られなかったけど…。とりあえず、以下のような感じで、欲しいオブジェクトの後ろに単色の箱を置いてレンダリング。GIMP 2.10.34 で青色だけ透明化。みたいな。

grass07.png

作業が終わった後で知ったけれど、GIMP 2.10 の「色を透明度に」の仕様が変わっていたのだな…。

_GIMP 2.10.8 において指定の色を透明度にする機能の仕様が変わっていて戸惑った件 | ゆとり院卒Life
_8.34. 色を透明度に...

もしかすると自分、色域指定で選択範囲を作って削除、みたいな感じで作業してたのだろうか。

*1: DirectX や OpenGL を使うライブラリで描画すればCPUの負荷を増やさずに描画できるだろうけど、今回は最終的にスクリーンセーバにしてみることを念頭において作業しているので…。

#2 [nitijyou] 玄関の照明がおかしい

数日前から、玄関の照明が点いたり消えたりを繰り返してる。何かが寿命になったんだろうけど。

今朝、状態を調べてみた。高い場所に設置されてるので、脚立を使って作業。ガラス製のカバーを、上から見て反時計方向に回したら、カバーを外せた。

中には、Uの形をした蛍光灯と、点灯管 FG-1E が入っていた。

点灯管 FG-1E を新しいものと交換してみたけれど、相変わらず点いたり消えたりする。点灯管の寿命というわけではないようだな…。蛍光灯の寿命だろうか。それとも器具自体の寿命だろうか。

蛍光灯について :

蛍光灯の表面には、「National 電球色 FUL 9 LE ME9ワット」と書いてあった。型番でググっても出てこないけれど、おそらく、「コンパクト蛍光灯 U型蛍光灯」という商品ジャンルではなかろうか。

FUL9EX という製品が昔はあったらしいけど、生産終了品扱いになってる。ただ、代替品として、ツイン蛍光灯 Panasonic FPL9EX-NF3、FPL9EX-LF3、 が使えるらしい。前者が昼白色。後者が電球色。

_FPL9EXNF3 | 照明器具検索 | 照明器具 | Panasonic
必ず専用器具でご使用ください。ツイン1(6形・9形・13形・18形)はU形蛍光灯と互換性があります。

たしかに、U型蛍光灯の代わりに使えるようだなと…。しかし、このツイン蛍光灯も、今では入手が少し難しいようで…。

ヨドバシカメラで FPL9EXNJF3 という型番も見かけたけど、これは何が違うのか…?

_【蛍光灯】品番の記載箇所、見方を教えてください。 - 蛍光灯・放電灯 - Panasonic
(9)内部管理記号
R、F2、F3、F3D、CF3、JF3・・・などの英数記号
内部管理記号の有無で互換性には影響しない

「最後のあたりの F3 とか JF3 は気にしなくてよろしい」ということでいいのかな。

使える点灯管について :

FPL9EXNF3 の仕様書PDFを眺めたら、以下の記述があった。
  • 適合点灯管 : FG-7EL, FG-7PL
  • 適合電子点灯管 : FE7E, FE1E

FG-1E は使えないのだろうか…?

ググった感じでは、口金という、点灯管を差し込む部分の大きさは、FG-7EL も FG-1E も、どちらもE17型で同じらしい。

_グローランプについて FG-1E FG-7E FG-4P この3つはどのようなもの... - 教えて! 住まいの先生 - Yahoo!不動産
  • FG-7E は直管蛍光灯(棒のような形の蛍光灯)専用。
  • FG-1E は直管蛍光灯と環形蛍光灯(ドーナツのような丸い蛍光灯)に対応。

FG-1E なら二種類の蛍光灯に対応してるのだな…。でも、なぜ FPL9EXNF3 の仕様書に記述がないのか。罠があるのか…?

親父さんがケーズデンキで代替品を買ってきた :

どこで購入したのものかと悩んでたけれど。夕方、親父さんが、「ケーズデンキで代わりになる蛍光灯を買ってきて取り付けておいたぞ」と。

なんでも、今まで使ってた蛍光灯をケーズデンキに持っていって同じものが欲しいと言ったら生産終了品と伝えられて困ったけれど、たぶんこれが代わりに使えると教えてもらった品を買ってきたらしい。

パッケージを確認したら、ヨドバシカメラで扱ってるものと同様、FPL9EXNJF3 (FPL9EX-N JF3) だった。2023/09 の時点では、ケーズデンキ、ヨドバシカメラに、まだ在庫が少しだけ残ってる、ということになるのかな。

点灯管は FG-1E のままだけど、フツーに蛍光灯が点いてしまった。FG-1E も直管蛍光灯に対応してるらしいし、一応使えるということだろうか。使い続けて問題があるのかどうかは分からんけど。

2023/09/09追記。点灯管を購入 :

ケーズデンキで、点灯管 Panasonic FG-7EL F2/X (FG7ELF2X) を買ってきた。150円ぐらいだった気がする。

パッケージ表とパッケージ裏に、利用できる蛍光灯の種類がちゃんと書いてあった。

fg7el_ss01.jpg

fg7el_ss02.jpg
  • FG7ELF2X
  • 適合ランプ : 蛍光灯 4〜10形
  • 直管蛍光灯 : 4,6,8,10形
  • 丸形蛍光灯 : 9形
  • ツイン蛍光灯 : 4,6,9形
  • 作動回数 : 約18000回

自宅にあった、Panasonic FG-1EL/2P (FG1EL2P)のパッケージも確認してみた。そちらにも利用できる蛍光灯の種類がちゃんと書いてあった。

fg1el_ss01.jpg

fg1el_ss02.jpg
  • FG1EL2P
  • 適合ランプ : 蛍光灯10〜30形
  • 直管蛍光灯 : 10,15,20,30形
  • 丸形蛍光灯 : 15,20,30形
  • ツイン蛍光灯 : 13,18,27形
  • 作動回数 : 約18000回

要するに、以下のような使い分けをせよ、ということらしい。たぶん。
  • 小さい蛍光灯 → FG-7E
  • 大きい蛍光灯 → FG-1E

つまり、昨日親父さんが購入した、ツイン蛍光灯 9形は、FG-7EL、FE-7E を使うべし、ということなのだな…。わざわざこうしてパッケージに記載されているということは、ツイン蛍光灯 9形に FG-1E を使わないでほしいということなのだろう…。問題無く使えるなら、FG-1E のパッケージにも、その旨が記載されているはずだし。

2023/09/11追記 :

玄関の照明の点灯管を、FG-1EL から FG-7EL に交換しておいた。これで安心して使えそうかなと…。

余談。電子点灯管の適正価格が気になる。

FG-7EL のパッケージには、「従来製品より3倍長持ち」と書いてある。そして、電子点灯管 FE-7E のパッケージには、「従来製品より10倍長持ち」と書いてある。

ケーズデンキの店頭で眺めた感じでは、3倍長持ちする FG-7EL は 150円。10倍長持ちする FE-7E は 約800円。本来なら、10倍長持ちする製品は、500円ぐらいが妥当なのではなかろうか…。800円では割高な気がする…。

いやまあ、電子点灯管はスイッチを入れるとすぐに蛍光灯がつくのが売りらしいので、その利便性に300円払うかどうかという話になるのかもしれんけど。というか、ツイン型蛍光灯 + 点灯管をLEDに置き換えられる製品を出してほしい気もするのだけど…。もっとも、器具の寿命等も絡んでくるからそういうのを出しても割に合わないのだろうか。

以上、1 日分です。

過去ログ表示

Prev - 2023/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