bate's blog

調べたこと実装したことなどを取りとめもなく書きます。

2012-01-01から1年間の記事一覧

VisualStudioC#2010Expressでソリューションを開くと強制終了

作ったソリューションを開くことができない。

バイナリ出力

修復したら使えるようになった。XMLのデータをロードしてバイナリに出力してみた。 private void button_export_binary_Click(object sender, EventArgs e) { // save as binary // 情報の取得 string basename = textBox_name.Text; string filename = base…

FormでXML入力、読込と保存

フォームで入力した情報をXMLで保存、保存したXMLを読み込みできるようにした。 <particle> <header> <name type="string">abc</name> </header> <emitter> <rotX type="Int16">1</rotX> <rotY type="Int16">2</rotY> <rotZ type="Int16">3</rotZ> </emitter> <particle> </particle></particle>

FormでXML入力

FormでXMLの内容を入力してXMLに保存的なことをした。 将来的にはパーティクルとかのデータを作成できるようにする予定。出力したXML <Particle> <ParticleInfo> <Name Type="string">abc</Name> </ParticleInfo> <ParticleData> <Position Type="float">100.5</Position> </ParticleData> </Particle> コ…

LINQ to XML楽チン

すごい楽ちん。 UACで詰まっただけで後はスイスイ進む。 app.manifest的なのを作って、xmlを書き換えれば大丈夫になった。

サンプルをぱくったサンプル

元ネタはここ。 http://opcdiary.net/?p=3438マルぱくり。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Linq; namespace LinqToXML { class Program { static void Main(string[] args) { var…

ジオメトリシェーダーで三角

3D

アプリコードはそのままで点を三角形にする。シェーダーコード struct VS_INPUT { float4 Pos : POSITION; }; struct GS_INPUT { float4 Pos : POSITION; }; typedef GS_INPUT VS_OUTPUT; struct PS_INPUT { float4 Pos : SV_POSITION; float4 Col : COLOR0;…

ジオメトリシェーダーで点

3D

ジオメトリシェーダーを使うために簡単なサンプルを作った。3つ点があり、それぞれの点からさらに2つの点を作る。シェーダーコード struct VS_INPUT { float4 Pos : POSITION; }; struct GS_INPUT { float4 Pos : POSITION; }; typedef GS_INPUT VS_OUTPUT…

カルチョビット

エアロビ+合気道+シュート=バイシクルシュート プレス+キック+ミーティング=黄金の足

カルチョビット

カウンター+ダッシュ+シュート=ドライブシュート

スペイン優勝

4年前と一緒。 スペイン優勝。 不思議な感じがする。

hlslでの構造体のアライン

3D

何かズレて面倒くさい。 16byte alignmentらしい。 float4かmatrixじゃない場合は注意が必要。 paddingするのかしら。

MRTs

3D

マルチレンダーターゲットを使ってみた。 1パス目は、レンダーターゲットは2つ。 2パス目は、1パス目のレンダーターゲットをテクスチャとして利用。左と右は別々のテクスチャ。 MRTsで別々のレンダーターゲットに描画したものをテクスチャにしたもの。 Text…

IDベースの輪郭

3D

オブジェクトにIDを振ってIDベースで輪郭を付ける。 輪郭はIDが違うオブジェクトの境界に付く。左は輪郭だけ、右は通常描画。オブジェクトIDが同一の場合 オブジェクトIDが違う場合

スペイン

ユーロ2012でスペインが決勝進出。 負けないサッカーをしてる感じ。 仕事でバグってるから直せと言われたが、調べてみると暫定対処のままの実装を発見。 担当者に話を聞いたらとにかく表示するための暫定対処でその部分がなくなると表示できなくなると言われ…

やる気

質問が来る→調べる→答える→質問が来る→調べる→答える→質問が・・・ 質問に丁寧に答えると質問が集中するので本来の仕事が進まなくなる。 仕事が進まないと愚痴られる。 やる気なくなる。

レンダリングステイト

DCCではcgfxでレンダリングステイト含めて表示して、実機側でcgのようにレンダリングステイトを保持できないシェーダーしかサポートされない場合はどうやってレンダリングステイトを解決しているのだろうか。 cgfxからレンダリングステイトを抜き出した設定…

テクスチャサンプラーの設定

3D

輪郭抽出の場合リニアとニアレストで注意が必要。

輝度によるエッジ検出

3D

t-potからのパクリ。 サンプリングポイントを増やして重みを付ければもっと良くなる。異なる色の境界を黒にする。処理の流れは下記の通り。 サンプリング→モノクロ化→輝度の差計算→ネガポジ反転 //--------------------------------------------------------…

クレジットカード

飛行機の予約とか面倒なのでクレジットカード欲しい。 審査ってワープアでも通るのかな。

テクスチャUVアニメ

3D

UVも動かしてみた。 //-------------------------------------------------------------------------------------- // Pixel Shader //-------------------------------------------------------------------------------------- float4 PS(PS_INPUT input) …

ユーロの年

euro2008の年に就職、euro2012の年も何かあるはず。 という意味で東京に旅行に行くことになった。

射影テクスチャ

3D

お仕事で使いそうなので実装テストしてみた。 tex2DProjが使えないので自分でwで割ることになる。カメラから四角形にテクスチャを投影。 //-------------------------------------------------------------------------------------- // Vertex Shader //---…

ブログに移ろうとして失敗

はてなブログに移ろうとしたが、広告の消し方が分からなかったので作って削除した。 しかし、ダイアリーの設定と消したはずのブログの設定がごちゃ混ぜになったのか、 トップに戻ろうとするとはてなブログの方に飛ぶ。マジくそ

ガウスフィルタ

3D

ガウスフィルタをやってみたが、重い。 フィルレートが駄目なのか、シェーダーが駄目なのか、DirectXAPIの使い方が駄目なのか。 そして、ボケ方が荒い。

Euro2012

Euro2008でスペインの優勝を見届けてから4年。 ニートの頃が懐かしい。

ボカシ

3D

簡単なボカシをしてみた。 ガウスは後でやることにした。 //-------------------------------------------------------------------------------------- // Pixel Shader //------------------------------------------------------------------------------…

ポストプロセスでモノクロ化

3D

準備ができたのでポストプロセスを色々と試してみる。 画面全体をモノクロにする。 float4 c = Texture.Sample(SamplerLinear, input.Tex0); #if MONO // モノクロ float4 mono = 0.3f*c.r+0.6f*c.g+0.1f*c.b; return mono; #else // カラー return c; #endi…

画面を覆う四角形ポリゴン

3D

ポストプロセスをするのに使うので、試しておいた。四角形で画面を覆う方法 1:(-1,-1,0)と(1,1,0)を対角とするような四角形を作る 2:頂点シェーダーで座標変換をせずにそのままフラグメントシェーダーに渡すDirectX11のサンプルを改造してスクショを撮った。…

列メジャー

ポリゴン出ないと悩んでいたら結局、行メジャーと列メジャーの問題だった。