トップページ > プログラム > 2015年06月08日 > DpcdWlc7

書き込み順位&時間帯一覧

10 位/172 ID中時間01234567891011121314151617181920212223Total
書き込み数0011000000000000000000013



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
【C++】 DirectX初心者質問スレ Part39 【C】 [転載禁止]©2ch.net
Win32API質問箱 Build120©2ch.net

書き込みレス一覧

【C++】 DirectX初心者質問スレ Part39 【C】 [転載禁止]©2ch.net
232 :デフォルトの名無しさん[sage]:2015/06/08(月) 02:09:57.85 ID:DpcdWlc7
Direct2D初めてみたばかりの初心者です。
現在、 https://code.msdn.microsoft.com/VisualC-howto-96795643 のソースを元に、ちょっといじっていまして
とありえず、任意のビットマップに色をつけてみたいのですがうまくいきません。
256x256のRGBA構造を自分で操作したいのですが、どなたか教えてください。
よろしくお願いします。
myBmp()は、CreateDeviceResources(HWND hWnd)の中で呼び出しています。
ID2D1Bitmap *pBmp=NULL;
void myBmp(){D2D1_SIZE_U size = {256,256};D2D1_PIXEL_FORMAT pixelFormat = D2D1::PixelFormat(DXGI_FORMAT_B8G8R8A8_UNORM,D2D1_ALPHA_MODE_IGNORE);
pRenderTarget->CreateBitmap(size,D2D1::BitmapProperties( pixelFormat), &pBmp);
BYTE myImage[256 * 256 * 4];
for ( int y = 0; y < 256; y++ )for ( int x = 0; x < 256; x++ ){
// bgra ?
myImage[x + y * 256 * 4 + 0] = 0xFF;myImage[x + y * 256 * 4 + 1] = 0x00;myImage[x + y * 256 * 4 + 2] = 0x00;myImage[x + y * 256 * 4 + 3] = 0xFF;
}
D2D1_RECT_U rect = D2D1::RectU(0, 0, 256, 256);pBmp->CopyFromMemory( &rect, myImage, 256*4);
}
void Render(HWND hWnd){HRESULT hr; hr = ::CreateDeviceResources(hWnd);if(!SUCCEEDED(hr)) return;
if(pRenderTarget->CheckWindowState() & D2D1_WINDOW_STATE_OCCLUDED) return;
pRenderTarget->BeginDraw();pRenderTarget->Clear(D2D1::ColorF(0.0F, 0.0F, 0.0F));pRenderTarget->DrawBitmap(pBmp,D2D1::RectF(0,0,256,256));pRenderTarget->EndDraw();
}
【C++】 DirectX初心者質問スレ Part39 【C】 [転載禁止]©2ch.net
233 :デフォルトの名無しさん[sage]:2015/06/08(月) 03:10:10.45 ID:DpcdWlc7
自己解決。。x*4忘れてたorz
Win32API質問箱 Build120©2ch.net
582 :デフォルトの名無しさん[sage]:2015/06/08(月) 23:35:39.81 ID:DpcdWlc7
ディスプレイの物理サイズを正確に調べる方法ってありますか?GetDeviceCaps関連でしょうか?
Windows8とかだとスケーリングとか任意で設定できるっぽいので、スケーリングの値など、関連する情報を取得できる方法が知りたいです。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。