OpenGL

今日は無駄にImage保存機能を付けてみました~(・ω・)~
Programming6
OpenGLの画像を保存するには
 void glReadPixels(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels );
を使って描画されいる画面を読み込んで、保存形式にそって書き出してやればOKなのですぐぁΣ(゚Δ゚*)
これを使ってみるとLightWaveのメインウィンドウの方の画面を持ってきてしまいました。(_△_;)
ショウガナイので
 COLORREF GetPixel( HDC hdc, int nXPos, int nYPos );
を使って取得することにしました。
しかしこれを使うと処理に時間がかかってしまふ・・・(-ω-`)
他に何か良い方法を見つけたら変えることにしよう(*´・ω・)y━~

LightWaveプラグインバージョンアップ

FOR_EasilyLinesをVer1.1へ
 追加機能は、最初と最後に選択した線分上に残りの選択ポイントを整列させるというものです。

この機能を付けるだけで6時間かかってしまいました、、
資料(数学の公式)を探すのが大変です・・・(-ω-`)
キーワードは、線分、三角形の内角の二等分線と比例、Point間の距離、内分点
これらを応用したものが今回の機能です、もっと他にいい方法があるかもしれませんです(‘ω’)ゞ
疲れた(_△_;)

OpenGL

昨日から作り初めました。
Programming1.gif
今日はオブジェクトの回転、正射影、透視法射影、ポイント表示、ライン表示、バックカラー&オブジェクトカラー変更、
な機能をつけてみました。
Programming2.gif
オプションパネル
Programming3.gif
ポイント表示、ライン表示の切り替え。
昨日からOpenGLを触り始めましたがとても楽にプログラミングができて楽しいです~(・ω・)~

Verアップ

昨日の記事で言っていた機能を付けました

どうやってCtrlキーが押されている状態を取得しようかなーと思って、
調べてみるとWin32 APIの
 GetKeyState関数
で取得できました。
今後も使うかもなので以下に書いておきます。
if(GetKeyState(VK_CONTROL) & 0x80000000) //もしCtrlが押されていたら~
if(GetKeyState(VK_SHIFT) & 0x80000000) //もしShiftが押されていたら~
if(GetKeyState(VK_MENU) & 0x80000000) //もしAltが押されていたら~

考えちゅー[( ̄∇、 ̄;)

2日ほど前にLightWavePluginの
 FOR_pointBdash!!
を公開していました。
これは、2Point以上を選択してドラッグすることでポリゴンが生成されるというものです。
辺をドラッグするという感覚でポリゴンを生成できるので便利かもです。
今日はパフォーマンスアップしたVer1.1を公開しました。
ディスク型などのPointをドラッグした場合一箇所ポリゴンが張られません。
これを解決するには、
 Ctrl+ドラッグ
とすることでぐるっと一周したポリゴンを生成できるようにしようかなと考えています。