게임에 특정 자산이로드 될 것으로 예상하지만 찾을 수 없습니다. 상황을 어떻게 처리해야합니까? 예를 들면 다음과 같습니다.
Texture* grassTexture = LoadTexture("Grass.png"); // returns NULL; texture not found
Mesh* car = LoadMesh("Car.obj"); // returns NULL; 3D mesh not found
사용자가 실수로 삭제했거나 개발 중에 손상되었거나 철자가 틀렸을 수 있습니다.
몇 가지 잠재적 인 답변 :
- 어설 션 (이상적으로는 개발 중에 만)
- 게임을 정상적으로 종료
- 예외를 던져 처리하십시오.
어느 방법이 가장 좋습니까?
이를 수행하는 한 가지 방법은 게임 데이터가 손상되지 않았는지 확인하는 것입니다. 누락 된 데이터를 자동으로 다시 다운로드하지 않으면 오류> 사용자에게 데이터를 확인하도록 요청> 다운로드 이를 위해 작은 도구를 만들어야합니다.
—
Sidar
당신은 대부분의 대답을 투표보다 어쩌면 당신은 당신이 말하고자하는 것을 잘 설명 할 수있는 더 말처럼 @Sidar I
—
concept3d
추악한 실수는 때로는 게임을 중단하고 사람들이 게임을 시작하거나 시작할 수 없다는 것입니다. 예를 들어 Steam에서 게임이 제대로 작동하지 않으면 게임 데이터를 확인할 수 있습니다. 무언가가 손상되거나 누락되거나 변경된 것처럼 보일 때 Steam은 자동으로 해당 파일을 다시 다운로드합니다. 나는 그들이 어떻게하는지 정확히 모른다. 그러나 그들은 분명히 일부 데이터와 비교하여 확인합니다. 아마도 해시 코드? 나는 정말로 모른다. 그러나 항상 표준 대체 자산 (단순히 "오류"라고 표시되는 텍스처)이
—
있어야합니다.
@Sidar 왜 대답으로 멋지게 포맷하지 않습니까?
—
concept3d
나는 그것이 어떻게 작동하는지 정확히 알지 못하고 잘못 알고 싶지 않기 때문입니다. 그래서 나는 당신에게 적절한 대답을 줄 수 없었습니다.
—
Sidar