youdai O.W.R 公式配布ページ
Version 20211031 Alpha
youdai O.W.RはオープンワールドRPGを目指して開発されています。今現在は歩行することしかできません。
注釈
本ソフトウェアはAlpha版です。
注釈
リファレンスの動作環境に
グラフィックボード nVidia GeForce GT740(DDR3) 4GB 以上
とありますが、実際には
グラフィックボード nVidia GeForce GT740(DDR3) 2GB 以上
でも動作します。
これらはあくまで目安で、実際にはもっと低い性能のグラフィックボードでも動作する可能性があります。
ダウンロード
最新版の配布先は、Google Driveです。
https://drive.google.com/file/d/1dR17XIY_kAa7nJC0tzKKxrJqcTtEMfCZ/view?usp=sharing
利用規約
youdai O.W.R は、youdaiの著作物です。
著作者の許諾無しに本ソフトウェアの一部、もしくは全てを再配布や販売することを禁じます。それは本ソフトウェアの動画を撮影し、動画サイト等で上映することも含まれます。
(ただし、HSP2021コンテストでのみ動画撮影、動画掲載、画像のプリントスクリーン掲載を許可します)
ネットでレビューや紹介する場合に限り、動画以外の画像のプリントスクリーンを掲載することは許可します。
販売禁止
著作者の許諾無しにこのソフトウェア及び、圧縮ファイルの販売を禁じます。
再配布禁止
著作者の許諾無しにこのソフトウェア及び、圧縮ファイルの再配布を禁じます。
動作PC環境
OS
Windows 7/8/8.1/10(32bit/64bit)
CPU
Intel Core i7 860S 2.53Ghz 以上
メモリ
8GB 以上(64bitOS)/2GB 以上(32bitOS)
グラフィックボード
nVidia GeForce GT740(DDR3) 2GB 以上
ディスプレイ
640 * 480 以上
OpenGL
3.1
更新履歴
version 20211031
ステージに影を追加
フルスクリーンモード解除(ウィンドウモード化)のconfigを追加
version 20211029
リリース開始
操作説明
プレイヤーの移動
キーボードの方向キーで移動します。
平行横移動
シフトキーを押しながら、左右の方向キーを操作すると平行横移動ができます。
フリーカメラビューモード
キーボードのFキーを押すと、フリーカメラビューモードに入り、方向キーで自由な方向に視点が変更できます。
ESCキーを押すと、通常の歩行モードに戻ります。
終了方法
メニューから選択して終了できる他、Alt + F4 キーで強制終了します。
シェーダー解説
HGIMG4ではシェーダーを作成することによって、様々なマテリアルを表現できます。作中で表現しているシェーダーをご紹介します。
Matcap × NormalMap × ColorMap
BumpをNormalMapで表現して、Matcapで描写しています。ColorMapを用いて、色分けも表現しています。都合、3枚のテクスチャ画像を用いていますが、負荷はそれほど重くありません。
Matcap
こちらはMatcap単体です。負荷が非常に軽いのが特徴です。その半面、光源を用いた表現ができません。拡散光シェーダーを合体させれば、影をリアルタイムに表現させることもできるのですが、スペキュラーの位置が全く合わないため、相性が悪く、影はあえて実装しませんでした。
半透明Matcap
こちらもmatcapで、シェーダーも全く同じなのですが、.materialの設定を変更して半透明Matcapを表現しています。このような特殊な見た目のマテリアルもmatcapであれば比較的容易に実装できることも利点です。
テクスチャブレンド
地面を見てください。これは異なるテクスチャを1つのマテリアル内でブレンドできるシェーダーです。砂とアルファルトは異なるテクスチャ及び、別々のUVを使っています。
標準シェーダーと共用が可能
もしかして仕様的に出来ないのではないかと思っていたのですが、1つのノードのオブジェクトで標準のcolordやtexturedと、自作のシェーダーの共用は可能でした。
機能としては例えば、GPOBJ_LGTOPT_NORMALを自作シェーダー側でも使えます。(ただし、自作シェーダー側がこの場合、matcapなので色変化程度しかさせていません)
この画像のオブジェクトは個々のパーツで自作シェーダーと標準シェーダーを共用しています。ただし、実現するには標準シェーダー側の機能に自作シェーダーの構造のかなりの部分を、合わせる必要があります。
configについて
configフォルダにはゲームの設定がiniファイルとして入っています。
environment_sound_volume.ini
環境音の音量を指定します。0が最大で-1000が無音です。
far.ini
ファークリップZ値です。
fov.ini
視野(FOV)パラメーターです。
near.ini
ニアクリップZ値です。
quality.ini
GL_FRAGMENT_PRECISION_HIGHのクオリティです。1=lowp、2=mediump、3=highpとなっています。デフォルトでは1が指定されています。
screen_aspect.ini
スクリーンのアスペクト比です。
screen_height.ini
スクリーンの縦幅です。
screen_width.ini
スクリーンの横幅です。
sysreq_vsync.ini
vsyncです。1がON、0がOFFです。vsyncがONでゲームを設計しているため、通常は1を指定してください。
fullscreen_mode.ini
フルスクリーンモードのオン、オフです。1でオン、0でオフとなり、スクリーンモードで表示されます。
画像度の変更その2
config_w**_h**というフォルダには、画像度のライブラリが入っています。wはスクリーンの横幅、hは縦幅を表しています。
フォルダの中身をconfigフォルダにコピー&ペーストするだけで、そのスクリーン画像度に変更することができます。
スクリーンの画像度を変更したい場合に利用するか、参考にしてください。
例えば、横1280、縦720のスクリーンに変更したい場合は、config_w1280_h720の フォルダの中身をconfigフォルダにコピー&ペーストしてください。
ライブラリにない画像度でも、該当するiniファイルを直接変更すれば、対応が可能です。
iniファイルについては「configについて」を参考にしてください。直接変更する場合は、screen_aspect.iniも変更してください。大抵は横幅/縦幅がscreen_aspect.iniの値として使用できます。
今後の予定
ユーザーによるキーマップ変更
コントローラ操作への対応
シナリオの実装
利用ライブラリ
本ソフトウェアは以下のライブラリを使用して開発されています。
Hot Soup Processor ver3.6 / onion software 1997-2021(c)
HGIMG4 / onion software 1997-2021(c)
HGIMG4開発ライブラリ
HGIMG4は以下のライブラリを使用して開発されています。
GamePlay3D v3.0.0
Bullet Collision Detection and Physics Library
Advanced Micro Devices, Inc.
The OpenGL Extension Wrangler Library
Copyright (C) 2002-2007, Milan Ikits
Copyright (C) 2002-2007, Marcelo E. Magallon
Copyright (C) 2002, Lev Povalahev
All rights reserved.
libpng version 1.6.16, December 22, 2014
Copyright (c) 1998-2014 Glenn Randers-Pehrson
(Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
(Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
zlib.h version 1.2.8, April 28th, 2013
Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler
利用ツール
本ソフトウェアは以下のツールを主に用いて開発されています。
3D
blender 2.92 64bit版
2D
gimp 2.10
サウンド編集
Audacity 32bit版
スクリプト編集
atom
アドバイス・参考
本ソフトウェアは以下の方々によるアドバイスを参考に開発されています。
砂時 計 氏 / _rotxyz ベクトル変換関係
usagi 氏 / refrect reflact 反射・屈折ベクトル関数関係
法貴優雅 氏 / matcap シェーダー関係
アキアキノヒロロ 氏 / GPBモデルコンバート関係
YouTube
3D作成をするに当たっては以下のチャンネルを参考にしています。
Blender 2.8 Beginner Tutorial シリーズ / CGBoost.com
DUCKY 3D
Daniel Kreuter
GLSL基礎
wgld.org
blender Addon
blenderを使用するに当たっては、以下のAddonを使用しています。
Add Curve: Curve Toos / Mackraken
Add Curve: Extra Objects / Multiple Authors
Add Mesh: BoltFactory / Aron Keith
Add Mesh: Extra Objects / Multiple Authors
Add Mesh: Low Poly Rock / PIXELDEPTH.net
Add Mesh: Mtree / Maxime Herpin
Mesh: Bsurfaces GPL Edition / Eclectiel, Vladimir Spivak (cwolf3d)
Mesh: PolyQuilt / Sakana3
Mesh: tinyCAD Mesh tools / zeffii (aka Dealga McArdle)
Node: Node Wrangler / Bartek Skorupa, Greg Zeaal, Sebastian Koenig, Christian Brinkmann, Florian Meyer
Object: Array_Tools / Elreenys
Object: Bezier Utilities / Shrinivas Kulkarni
UV: DreamUV / Bram Eulaers
UV: Magic UV / Nutti, Mifth, Jace Priester, kgeogeo, mem, imdjs, Keith (Wahooney) Boshoff, McBuff, MaxRobinot, Alexander Milovsky, Dusan Stevanovic, MatthiasThDs
2Dテクスチャ素材
本ソフトウェアの2Dテクスチャの加工元は、以下の著作物を利用して開発されています。
ベイツ
pakutaso
blender(CC0のmatcap)
効果音素材
本ソフトウェアの環境音の加工元は、以下の著作物を利用して開発されています。
効果音ラボ