またしても詰まってしまいました。
MEDのマテリアル設定でポリゴンの裏側を表示させるオプションとかはないのでしょうか?(unityでのtwosideとか)
それともスクリプト上で設定できるのでしょうか?マニュアルを探しましたがそれらしきものが見つかりませんでした・・・
Windowsゲーム制作ツール「3D Gamestudio」
223名前は開発中のものです。
2020/05/21(木) 22:21:33.64ID:qFsXVeHc224名前は開発中のものです。
2020/05/22(金) 14:32:14.54ID:9RrhreTt 両面ポリゴン使った方が無難だと思うけど、
MEDにはそんなオプションはたぶんないかな。
片面ポリゴンを両面表示化させたいなら、シェーダー使わないと無理じゃないかな。
ただし、シェーダーはモデル単位で適用されるのでモデルを分割させないといけませんね。
そうすると複数のモデルをパーツごとに読み込んでそのモデル同士の親子付けとか必要になってくると思います。
自分的にはわりと未知の領域です。
#include <acknex.h>
#include <default.c>
#include <mtlFX.c>
ENTITY* a_mdl;
action a_mdl_prop();
.
function main()
{
a_mdl = ent_create("a.mdl", vector(0, 0, 0), a_mdl_prop);
}
action a_mdl_prop()
{
me.material = twosided; // これが両面表示させるシェーダーの名前
}
MEDにはそんなオプションはたぶんないかな。
片面ポリゴンを両面表示化させたいなら、シェーダー使わないと無理じゃないかな。
ただし、シェーダーはモデル単位で適用されるのでモデルを分割させないといけませんね。
そうすると複数のモデルをパーツごとに読み込んでそのモデル同士の親子付けとか必要になってくると思います。
自分的にはわりと未知の領域です。
#include <acknex.h>
#include <default.c>
#include <mtlFX.c>
ENTITY* a_mdl;
action a_mdl_prop();
.
function main()
{
a_mdl = ent_create("a.mdl", vector(0, 0, 0), a_mdl_prop);
}
action a_mdl_prop()
{
me.material = twosided; // これが両面表示させるシェーダーの名前
}
225名前は開発中のものです。
2020/05/22(金) 14:53:27.71ID:9RrhreTt まあ、フィギュアなんかはそもそも裏側が透明だと違和感あるので
ごっそりまるまる両面表示化シェーダーを適用させてもあまり問題起こらない気がするけど。
カメラに映ってない箇所はシェーダーで処理しないんだし。
ごっそりまるまる両面表示化シェーダーを適用させてもあまり問題起こらない気がするけど。
カメラに映ってない箇所はシェーダーで処理しないんだし。
226名前は開発中のものです。
2020/05/22(金) 15:09:16.34ID:DhcBaLXv ありがとうございます!
シェーダーと両面ポリゴン、いろいろ試してみます。
シェーダーと両面ポリゴン、いろいろ試してみます。
227名前は開発中のものです。
2020/05/25(月) 20:47:36.78ID:Ai9kIzm7 ようやくアニメーションまで漕ぎつけました。
通常は、a_mdl_anime()を別途作成し、
function main()
{
a_mdl = ent_create("a.mdl", vector(0, 0, 0), a_mdl_anime);
}
でアニメ設定できて、表示もOKだったのですが、前述のシェーダーを同時に適用する場合、
どのような方法がありますでしょうか?
クリエイト時にできないかと、
function main()
{
a_mdl = ent_create("a.mdl", vector(0, 0, 0), (a_mdl_prop && a_mdl_anime));
}
これではエラーとなりますし、
エンティティのイベントにわたせるかと、
function main()
{
a_mdl = ent_create("a.mdl", vector(0, 0, 0), a_mdl_prop);
a_mdl.event = a_mdl_anime;
}
と、しましたら、エラーにはなりませんが、シェーダーの適用のみでアニメの適用はされず・・・
通常は、a_mdl_anime()を別途作成し、
function main()
{
a_mdl = ent_create("a.mdl", vector(0, 0, 0), a_mdl_anime);
}
でアニメ設定できて、表示もOKだったのですが、前述のシェーダーを同時に適用する場合、
どのような方法がありますでしょうか?
クリエイト時にできないかと、
function main()
{
a_mdl = ent_create("a.mdl", vector(0, 0, 0), (a_mdl_prop && a_mdl_anime));
}
これではエラーとなりますし、
エンティティのイベントにわたせるかと、
function main()
{
a_mdl = ent_create("a.mdl", vector(0, 0, 0), a_mdl_prop);
a_mdl.event = a_mdl_anime;
}
と、しましたら、エラーにはなりませんが、シェーダーの適用のみでアニメの適用はされず・・・
228名前は開発中のものです。
2020/05/25(月) 23:20:08.79ID:iF6OjKsN a_mdl_prop() と a_mdl_anime()の一つにしちゃえばいいのではないでしょうか。
a_mdl_anime()が何かは分かりませんがおそらくこれまでの話の流れ的にどっちもmaterial構造体への
アクセスでしょうから
action xxxxx()
{
my.material = twosided;
my.material.ambient_blue = 255;
以下略
my.skin = 1;
以下略
}
a_mdl_anime()が何かは分かりませんがおそらくこれまでの話の流れ的にどっちもmaterial構造体への
アクセスでしょうから
action xxxxx()
{
my.material = twosided;
my.material.ambient_blue = 255;
以下略
my.skin = 1;
以下略
}
229名前は開発中のものです。
2020/05/25(月) 23:31:56.42ID:iF6OjKsN my.material = twosided; ではなく my.material = mtl_twosided; でした。
230名前は開発中のものです。
2020/05/25(月) 23:34:54.32ID:iF6OjKsN 自分でmaterialを定義して名前をつけてアタッチすることもできるし、
action関数内で直接Entityのmaterialを弄ってもよいわけです。
ambientやskinといったメンバー変数はごく基本的なものですから、
モデル自身で持ってます。
直接代入して書き換えるか、materialという型で変数を作って
名前を使って書き換えるかの違いがあるだけです。
action関数内で直接Entityのmaterialを弄ってもよいわけです。
ambientやskinといったメンバー変数はごく基本的なものですから、
モデル自身で持ってます。
直接代入して書き換えるか、materialという型で変数を作って
名前を使って書き換えるかの違いがあるだけです。
231名前は開発中のものです。
2020/05/25(月) 23:46:10.27ID:iF6OjKsN >>227
のコードを改造するとしたら
#include <mtlFX.c> // mtl_twodied 用のインクルードファイル
.
a_mdl = ent_create("a.mdl", vector(0, 0, 0), (a_mdl_anime));
action a_mdl_amime()
{
my,material = mtl_twosided; // tow_sided機能を適用
}
を追加するだけで良いかもしれません。
materialの定義は関係のないメンバー変数を上書きはしなかったと思います。
2重定義しても差し支えないでしょう。
のコードを改造するとしたら
#include <mtlFX.c> // mtl_twodied 用のインクルードファイル
.
a_mdl = ent_create("a.mdl", vector(0, 0, 0), (a_mdl_anime));
action a_mdl_amime()
{
my,material = mtl_twosided; // tow_sided機能を適用
}
を追加するだけで良いかもしれません。
materialの定義は関係のないメンバー変数を上書きはしなかったと思います。
2重定義しても差し支えないでしょう。
232名前は開発中のものです。
2020/05/26(火) 19:43:28.80ID:OB4YT/vT おおお!
なぜか、処理を分けようと思い込んでいました。
1つにして問題なくいけました!
とりあえず、mdlファイルへのコンバートは制限はあるものの、
アニメ付きで表示できるまでになったので、ゲーム制作の入り口にはたどり着けたようです^^
なぜか、処理を分けようと思い込んでいました。
1つにして問題なくいけました!
とりあえず、mdlファイルへのコンバートは制限はあるものの、
アニメ付きで表示できるまでになったので、ゲーム制作の入り口にはたどり着けたようです^^
233名前は開発中のものです。
2023/07/31(月) 05:37:50.18ID:PF/zeelH 物理的に無理
レスを投稿する
ニュース
- 高市総理の周辺「小さな火種が火事になりかけている。早く鎮火しないといけない」 ★2 [Hitzeschleier★]
- 俳優 高岡蒼佑「エジプト出身とかナイジェリア出身とかの人が、日本の代表顔して移民の事とか話してるの見るとなんか違う気がする」 [Anonymous★]
- 【北京中継】「日本国民はとても友好的」日本訪問予定の中国人は冷静な反応…中国側報道「高市首相は辞任すべき」 [煮卵★]
- 中国の複数の旅行社、日本ツアーを中止 政府の訪日自粛要請受け [蚤の市★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★2 [冬月記者★]
- 「台湾も迷惑だと言っている」フジ「ホンマでっか」出演の早大名誉教授が高市首相発言に「日本はやばいことに」 [muffin★]
- 【悲報】中国人観光客、絶滅へ。中国旅行会社が日本旅行販売停止。中国人はもう二度と遊びに来れません😤高市どーすんのこれ [856698234]
- 【実況】博衣こよりのえちえち雀魂1位耐久🧪
- 【中国】日本向けツアー中止、邦画公開延期。ジャップが中国叩きをしてる間に続々と大きな制裁に向けて動きが加速www [305926466]
- 【悲報】中国「高市は信用できない」G20サミットでの会談予定なし [834922174]
- 大谷翔平の犬なんだっけ
- 日本人「戦争戦争!銃の撃ち合いでカッコいいぞ!」中国「高市さあ、対日禁輸だけすればわざわざ戦わなくてもこっちの勝ちだぞ?」 [517791167]
