今日は8日目に作成した水分子をポイントスプライトとして描画しようとしましたが、
このザマでした。
アルファ値が反映されていません・・・
次の日
今日は、14日目に作成した三角形のコードを変更して
点
を描画しました。
赤い箇所が変更/追加部分です。
gl::DrawArrays(
gl::POINTS, // mode
0, // starting index
3, // number of indices to be rendered
);
gl::Enable(gl::VERTEX_PROGRAM_POINT_SIZE);
#version 330 core
layout (location = 0) in vec3 Position;
void main()
{
gl_Position = vec4(Position, 1.0);
gl_PointSize = 30.0;
}
次回以降は、この点を
ポイントスプライト
に置き換えて、当初の目的である水分子を描画します。
次の日
昨日から、描画部分をOpenGLとDirectXのどちらにするか悩んでいました。
OpenGLとDirectXを比較すると、
・OpenGLはWindows, Mac, Linuxなど色んなOSに対応
・DirectXはWindowsのみ対応
・ゲームによるが、だいだいOpenGLはDirectXの7割~9割のパフォーマンス(OpenGLは影の描画が汚かったり画質が悪いことがある)
でした。
思ったより差が無かったです。パフォーマンスが倍くらい違えば間違いなくDirectXにしたんですが、困りました。ちなみにOpenGL後継のVulkanは思ったよりパフォーマンス上がってないですね。
WebGLでブラウザ経由によりいろんな環境に対応できそうなので、明日からは引き続きOpenGLで開発を継続したいと思います。
次の日
昨日まではOpenGLでの描画基礎処理を行ってきましたが、今日はこのままOpenGLで開発すべきか悩んでいました。
過去にWebGLベースで開発してWebアプリとiOSアプリの両対応したことがあるのですが、iOSアプリについては「売れていない&アップデートされていない」という理由で
Appleにアプリストアからアプリを削除されてしまいました。
OpenGLで開発して将来的にはiOS対応の選択肢も残しておこうと思っていましたが、Windowsだけ対応すれば良いじゃないかという気になってきました。iOSではOpenGL非推奨で、Metalが推されてもいますしね。
そこで今日はこのページを見たりこの動画を見たりしていました。
次の日
今日は昨日までにチェックした情報を元に
三角形を1つ
描画しました。
一応Steamに出す予定なのでソース全体は載せません・・・
このページを見ればどんなソースかわかると思います。
あとフルスクリーンをやめて、サイズ変更可能なウィンドウ表示に変更しました。
let window = video_subsystem.window(“環境原猫”, window_w, window_h)
.opengl()
.resizable() // .fullscreen_desktop()
.build()
.unwrap();
次の日
今日は、昨日に引き続きこのブログのこのページを読みました。
これでOpenGLで
三角形
を描くとこまで読み進みました。
どうも私は会社で普通に働いてるのでなかなか作業が進みません。
このアプリの月額課金の売り上げで生活出来るようになればゲーム制作に集中するのですが・・・
次の日
今日は、昨日に引き続きこのブログのこのページを読みました。
あとはVSCodeに、言語サーバとして
rust-analyzer (公式のRust Language Serverは廃止になった)
と、ステップ実行するために
CodeLLDB
の拡張機能をインストールしました。
この2つの拡張機能で
Visual Studio使ってるときみたいに
開発できるようになりました。
(੭ ˃̣̣̥ ω˂̣̣̥)੭ु⁾⁾
これで明日からゲーム開発がバリバリ進む・・・筈です。
次の日
今日は、昨日に引き続きこのブログのこのページを読みました。
あとはソース先頭行に書いたコード
#![windows_subsystem = "windows"]
について、これは余分なウィンドウが表示されるのを防ぐコードですが、これがあると標準出力されなく実行時のエラー原因などがわからなくなってしまいました。
そこでリリース時のみこのコードが有効になるように
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
の記述に変更しました。
次の日
本日は、昨日目星をつけていたこのブログのこのページとこのページを読んで勉強しました。
おまじない的に何となく記述していた箇所を、ちゃんと理解できるようになりました。
(੭ ˃̣̣̥ ω˂̣̣̥)੭ु⁾⁾
今回作成するゲームは、低水準部分から作りたいので基礎は大事です。地道に学習します。
何となくRustを理解している方にも、読んでいただくことをお勧めします。
次の日
OpenGLのポイントスプライトで、昨日作成した水分子を描画するためにどうすればよいか、本日は調査を行います。
情報源としては
・この本を買う
・このリポジトリを見る
・このブログを見る
などがありそうです。
サクッとこの本を買って勉強したいところですが、目次を見る限りあまり詳しく解説されているように見えないので、このリポジトリやこのブログを本日は調べました。
次の日
大手には作れないアプリを(気持ちだけは(๑•̀ㅂ•́)و✧)