요즘 개발일지 너무 많이 쓰는것 같아서 민망한데, 요즘 엄청 많이 작업했음.
열심히 하다 보니, 자꾸 누군가한테 보여주고 싶어지더라
물 시스템 뜯어고치고, 발견한 버그 고친다고 마지막 개발일지 올린 날 4시 넘어서 자고
9시에 일어나서 햄버거 하나 먹고 오후 10시까지 못 쉬고 계속 고쳤음.
그리고 다음날은 거의 쓰러져서 아무것도 못했고 오늘 유리 추가해서 기분좋게 시뮬레이션을 찍어봤음.
이번 주는 좀 쉴까 고민중임. 밀린 과제들도 해야 하고 너무 지쳤음.
물이 옆칸으로 이동하기도 하고, 어디있는지 알 수 없는 "수압"블록에서 내쪽으로 이동하기도 하니깐 버그를 추적하기가 너무 힘듬.
머릿속으로 시뮬레이션을 돌리는게 불가능함.
debug.log찍어보면 수천 수만개가 찍혀서 진짜 추하게 문제가 일어나는 블록 좌표를 특정해서 debug.log찍어줬음 ㅋㅋ
이제 그 블록이 가지고 있는 수압이 무엇이냐 같은 정보를 보고 어디서 왜 문제가 일어났는지 추리해야 함
물의 총량이 블록을 물 위에 설치하지 않는 이상 완벽히 유지됨.
아무튼 그동안 존재조차 몰랐던 버그들 다 고쳤음.
청크 데이터와 별개로 계산용 데이터를 생성해서 그 위에서 스레드로 계산을 돌리고, 계산 종료 후 메인스레드에서 청크 데이터와 동기화 시켜주기 때문에
이제 스레드에서 돌려도 안전함.
물의 value를 float에서 int로 수정해서 부동소수점에 의한 오차를 완전히 제거해줌.
gif용량이 너무 커서 중간 반복되는부분 조금 자름
물 100
물 200만큼 넣으면 꽉 차서 반대방향으로 나옴
여기에 구멍을 뚫으면, 가장 높은 수압블록은 저기 오른쪽에 높이있는 길이 되겠지
오른쪽 높은 길에서 물이 역으로 왼쪽 방향으로 빠져나감
완전히 빠져나가지 않는 이유는 하나의 블록 위에 0.2 이하의 물이 존재한다면 그 물은 더이상 움직일 수 없다는 조건 때문인데, 이건 어쩔 수 없음.
그리고 물이 이동하기 위해서는 물을 옮길 블록보다 0.2보다 더 많은 물이 있어야 한다는 조건도 있음.
물이 완전히 평평해지진 않겠지만, 계산 횟수를 최소한으로 줄이기 위해서 이렇게 처리함.
정 어색하면 물의 이동을 0.2씩 하지 않고 0.1씩 해야지
기본적인 부분은 완전히 끝났고(버그 몇개 빼고) 이제 게임플레이에서 핵심적인 부분을 좀 구현해보다가(자연재해, 멸망), 가능성 보이면 같이 만들 팀원 모집하고 싶다.
오 - dc App
뭔가 겁나 신기한데 - dc App
제가찾던 노치 여기 있네요 - dc App
추석에 고생했네.. 화이팅
감사합니다
유체역학특) 좆고수만 가능 ㅋㅋ
와 이게 뭐임? 쩐다
ㄳㄳ
ㄷㄷ