이전까지 사용하던 로그는 단순 텍스트로 저장되었습니다. 로그 양이 적으면 문제 없겠지만 많으면 어디서 에러가 찍혔는지 추적하기도 힘들고 눈도 아프죠. 그래서 HTML 기반의 로그를 제작해봤습니다. GPG 4권에도 비슷한 관련 내용도 있으니 관심 있으신 분은 참고해보세요.
Game Programming Gems 4 - Andrew Kirmse 지음, 류광 옮김/정보문화사 |
일단 HTML 기반인 만큼 단순 텍스트에 비해 여러 연출을 줄수 있습니다. 중요 메시지는 크고, 두껍고, 아름답게(?) 표시를 하거나 에러 관련 메시지는 붉은색으로 강렬하게 표시하여 쉽게 추적할수 있게 할수 있죠.
적용 예
구현도 어렵지 않습니다. 그냥 텍스트 파일 저장 하듯이 저장하면 되고, 단지 파일명을 html로 적고 싶은 메시지외에 HTML 태그등을 같이 입력해주면 됩니다.
// 한글을 쓸 수 있게 하자 std::locale::global(std::locale("kor")); std::wofstreamm_LogStream; m_LogStream.open(L"Test.html"); m_LogStream << L"<html>\n\n<head><title>로그페이지</title></head>\n\n"; m_LogStream << L"<bodytopmargin='10'leftmargin='10'marginwidth='10'marginheight='10'"; m_LogStream << L"\tstyle=\"height:auto;vertical-align:top;text-align:center\">\n\n"; m_LogStream << L"<fontcolor=white><b>"; m_LogStream << L"로그메시지를입력하세요"; m_LogStream << L"</b></font></body>\n</html>"; m_LogStream.close();