문제

안녕하세요 저는 SLIMDX로 올바르게 렌더링하는 데 어려움을 겪고 있습니다. .NET Drawing DrawImageUnscaled처럼 약간 스케일링됩니다. 나는 어떤 변환도 사용하지 않습니다.

init :

Vector2 position;
Sprite sprite;
Size size;
Texture texture;
sprite = new Sprite(Device);
string filename = /*some bitmap*/;
using (Image b = Bitmap.FromFile(filename))
  size = b.Size;

position = new Vector2(550, 230);
texture = Texture.FromFile(Device, filename);

표현:

Device.Clear(ClearFlags.Target, Color.Black, 1.0f, 0);
Device.BeginScene();
sprite.Begin(SpriteFlags.None);
sprite.Draw(texture, new Vector3(size.Width / 2, size.Height / 2, 0), new Vector3(position, 0), Color.White);
sprite.End();
Device.EndScene();

편집 : 잘못된 렌더링을 상상하는 방법을 모른다면 여기에 내가 렌더링하고 참조하는 것이 있습니다 (흰색을 무시하십시오. 투명한 PNG입니다). 첫 번째 이미지가 어떻게 조정되는지 주목하십시오잘못된 옳은

도움이 되었습니까?

해결책

그래픽 카드에 NPOT-TEXTURES (비 전원 2)를 그리는 데 문제가있을 수 있습니까? 그렇다면 텍스처 크기를 다음 냄비로 늘리십시오. 이것은 나에게 많은 드로잉 문제를 해결했습니다 (SLIMDX도 사용).

BTW ... 또한 2D 렌더링에 SLIMDX를 사용했지만 스프라이트를 사용하지는 않았지만 모든 것을 "프리미티브"로 그리고 정점 버퍼를 사용했습니다. 어쩌면 이것은 옵션 일 수도 있습니다

다른 팁

스프라이트를 초기화 할 때 알파 블렌드를 추가하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top