렌더링 할 창을 얻을 수 있었고, 내 셰이더가 작동하고 있다는 것을 알 수 있었고 실제로 애셋에서 이미지를 가져올 수 있습니다. 실제로 뷰를 렌더링하면 파란색 배경이 나타나고 스프라이트는 나타나지 않습니다.OpenTK : 스프라이트가 렌더링되지 않습니까?
조회수가의 무거운의 대부분을 가지고 있으며, 쉐이더를 선언 추상 클래스 WindowBase를 상속 (I 만 자산에 지금 하나가) 다음과 같이
기본 설계입니다. 내 유일한보기는 지금 Main.cs입니다.
다음보기에서 ObjectBase 인스턴스를 선언 할 수 있습니다. 오브젝트에는 OpenGL을 통해 텍스처 서비스에 의해 생성 된 텍스처에 링크 된 Sprite로 구성된 애니메이션이 있습니다.
아직 입력 서비스가 있습니다.하지만 지금은 입력 키가 없어도 이스케이프 키를 사용하여 창을 닫을 수 있습니다. 그러나 프로그램의 일부가이 문제와 관련이 있는지 의심 스럽습니다.
업데이트 : 원본으로 천천히 원본을 광산으로 변환했으며 Shader 시스템으로 바꾼 순간 파손되었음을 발견했습니다. 문제가 거기에 있습니다. 여기에 자신의 대 내 코드를 게시 할 수 있습니다 :이 시점에서 추측하고있어
어디 선가 typo'd해야했습니다. 아니면 내 루프 중 하나가 호환되지 않습니다. 아마 자산 클래스에서 스트림 리더를 처리하는 방법일까요? 다음과 같이
public int Attribute(string name)
{
return _attributes.ContainsKey(name) ? _attributes[name].Address : -1;
}
public int Uniform(string name)
{
return _uniforms.ContainsKey("name") ? _uniforms[name].Address : -1;
}
public uint Buffer(string name)
{
return _buffers.ContainsKey(name) ? _buffers[name] : 0;
}
:
코드를 모두 덤프하지 말고 [최소한의 완전하고 검증 가능한 예제 만들기] (https://stackoverflow.com/help/mcve)하십시오. – Vallentin
이것은 OpenGL입니다. 내가 가지고있는 것을 단순화 할 수있는 방법이 있는지는 확실하지 않습니다. 전체 게임 엔진이고 스프라이트를 렌더링하지 않습니다. 835 개의 다른 곳이 있습니다. 그러나보기를 원하는 코드는 Views/Main.cs에 있습니다. –