1277 lines
44 KiB
Plaintext
1277 lines
44 KiB
Plaintext
// history_work.txt
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
* 작업 History 작성 방법
|
|
|
|
[작업자]
|
|
[시작일자][종료일자][상태][작업구분]
|
|
* 프로젝트
|
|
<세부내역>
|
|
|
|
주의 : 탭 사용하지 말 것 (에디터마다 다르게 보일 수 있음)
|
|
쓸 데 없이 두 줄 이상 띄우지 말 것
|
|
완료 되고 실제로 커밋된 내용만 적을 것
|
|
*/
|
|
|
|
|
|
[김민조]
|
|
[09.11.-][10.06.07][완료][작업]
|
|
* 캐릭터 엔진
|
|
<작업내용>
|
|
- 전체 리뉴얼 (클래스 구조 정리, 재작성, 안정화, 성능 개선)
|
|
- CWzdShareInfo 추가 - 메시 공유 정보 관리
|
|
- CWzAniState 추가 - 애니메이션 프레임 관리 및 변환 계산
|
|
- CWzAniStateCB 추가 - 애니메이션 콜백 클래스
|
|
- CWzUnitSkeleton 추가 - 애니메이션 대표 클래스
|
|
- 애니메이션 대표로 쓰이는 인스턴스(CWzUnitDraw)와 아닌 것과의 확실한 분리
|
|
- 애니메이션 대표로 쓰이는 인스턴스는 CWzUnitSkeleton을 가지고
|
|
애니메이션 및 바운딩 관련 정보 관리
|
|
- 애니메이션 대표로 쓰이는 인스턴스용 변수는 CWzUnitSkeleton으로 뺌, 메모리 절약
|
|
- LOD별 애니메이션을 단순화하여 성능 개선 도모
|
|
- 위치/회전/크기 변화가 없는 경우, 변환 정보를 재계산 하지 않도록 함, 성능 개선 도모
|
|
- 이펙트, 풀 메시를 명시적으로 표시하여, 불필요한 연산을 안 하도록 수정
|
|
- 보간 시간을 프레임에서 시간으로 변경
|
|
|
|
* 렌더러
|
|
<작업내용>
|
|
- 유닛 LOD별 셰이더 선택(블랜딩 수 조절)
|
|
- 그림자 옵션 추가
|
|
- 그림자 옵션이 꺼진 경우, 불필요한 연산 제거
|
|
- CManagerUnitLOD 재작성
|
|
- CDrawUnitRenderer 재작성
|
|
- CManagerWzdLoader 재작성
|
|
- CManagerWzUnitLoader 재작성
|
|
- CManagerTexture 재작성
|
|
- CManagerTextureD3D 재작성
|
|
- CThreadObject 재작성
|
|
- CManagerMultiLoader 재작성
|
|
|
|
[이지연]
|
|
[10.06.04][10.06.04] [완료][버그:6354]
|
|
* ControlsDLL:
|
|
<작업내용>
|
|
- 대화창에서 지난 대화를 선택하는 경우 크래시 발생하는 현상 수정
|
|
- 지난 대화를 위/아래 방향키로 선택 입력하는 상황을 수 차례 반복 (문자열 길이가 다양하면 더 잘 발생) / 입력문자 수정을 수차례 하다보면 크래시 발생
|
|
- CCtrlDxEditBox::SetTextWZW 와 CCtrlDxEditBox::SetTextWZA 에서 m_nFirstVisible 값을 0으로 초기화해주는 코드 누락으로 인한 현상. 수정 완료.
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2010년 03월 26일
|
|
|
|
- WZENGINEVER 136
|
|
- 추가된 기능이 배포되지 않은 관계로 재배포
|
|
|
|
- [맵툴]
|
|
- 카메라와 맵오브젝트간의 충돌처리기능
|
|
|
|
- [캐릭터툴]
|
|
- 스펙큘러 강도조절 기능추가
|
|
|
|
- [이펙트툴]
|
|
- 이펙트 바운딩볼륨영역설정 기능추가
|
|
- visual탭 스크롤 잘 안되는 현상 수정
|
|
*/
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2010년 03월 25일
|
|
|
|
- WZENGINEVER 134
|
|
*/
|
|
|
|
[이태준]
|
|
[10.05.28][10.05.28] [완료][작업]
|
|
* MapTool:
|
|
<작업내용>
|
|
- 타이머 동작 트리거 추가 작업
|
|
- UnitEditer 의 SetPosition 기능 제한하던 사항을 복구
|
|
(럭키몬스터의 포지션 랜덤리젠 관련)
|
|
|
|
[이태준]
|
|
[10.05.10][10.05.20] [완료][작업]
|
|
* 3DRenderer (ControlsDLL):
|
|
<작업내용>
|
|
- ControlsDLL 의 CElementRender 클래스를 3DRenderer 로 옮김
|
|
|
|
[윤영주 ]
|
|
[10.05.10][10.05.17] [완료][작업]
|
|
* Maptool:
|
|
<작업내용>
|
|
- 오브젝트,트리 컬러 수정한 값이 오브젝트,트리에 바로 적용되게 수정
|
|
|
|
[이태준 ]
|
|
[10.05.05][10.05.06][완료][작업]
|
|
* MapTool:
|
|
<작업내용>
|
|
- 액션트리거 추가 - 설치형몬스터 생성하기 트리거
|
|
- changeset [1743]
|
|
- 유닛배치타입 추가 - (6)주위 아군 따라가기
|
|
- changeset [1742]
|
|
|
|
[윤영주 ]
|
|
|
|
[10.04.19][10.05.05][완료][작업]
|
|
* Terrain:
|
|
<작업내용>
|
|
- 원경 서서히 드러나기 작업
|
|
* MapTool:
|
|
<작업내용>
|
|
- 100306 버전 이후부터 최근에 열어본 맵파일 리스트를 이용하여
|
|
맵 로딩을 하게되면 크래쉬나던 버그 수정
|
|
- 오브젝트 에디트 중 오브젝트를 선택하지 않은 상태에서
|
|
바닥색상 입히기 체크박스 누르게 되면 크래쉬 나던 버그 수정
|
|
- 작업중인 맵 파일을 이용하여 클라이언트 실행하는 기능 추가
|
|
(상기 기능 추가로 인해 MAP_OPTION_VER 이 6 -> 7로 변경)
|
|
|
|
[윤영주 ]
|
|
|
|
[10.04.05][10.04.06][완료][작업]
|
|
* MapTool:
|
|
<작업내용>
|
|
- 풀 에디트 다이얼로그에서 삭제 할 아이디 선택 후 다이얼로그 하단의
|
|
"Remove(Selected ID)" 버튼 클릭하면 선택된 ID의 풀들 일괄 삭제 하는 기능 추가
|
|
- changeset [1685][1686]
|
|
|
|
[이태준 ]
|
|
[10.03.29][10.03.29][완료][작업]
|
|
* InterfaceTool:
|
|
<작업내용>
|
|
- 인터페이스툴 각 컨트롤의 생성갯수제한 99에서 999로 변경
|
|
- changeset [1667][1669]
|
|
|
|
[윤영주 ]
|
|
|
|
[10.03.20][10.03.23][완료][기타]
|
|
* MapTool:
|
|
<작업내용>
|
|
- 맵툴 불필요한 주석 및 테스트 코드 제거
|
|
- tcm파일 저장시 map파일명으로 저장 하던 것을 wmo파일명으로 저장 하도록 수정
|
|
- changeset [1639]
|
|
|
|
[10.03.02][10.03.19][완료][기타] 맵툴 분석 및 수정
|
|
* MapTool:
|
|
<작업내용>
|
|
- MFC 관련된 불필요한 코드 및 사용 안되는 테스트 코드 제거
|
|
- 트리거 에디트 기능 중 사용 안되는 기능인 trigger info export, import, merge 버튼 제거
|
|
- wzMapEditorView class의 onObjLoad, onObjSave 함수명을 onMapLoad, onMapSave로 변경
|
|
- changeset [1635]
|
|
|
|
[이태준 ]
|
|
[10.03.08][10.03.11][완료][작업]
|
|
* MapTool:
|
|
<작업내용>트리거 변경사항 적용
|
|
- 유닛 패트롤타입 추가
|
|
- 유닛 패트롤 경로상 걷기/달리기 설정 추가
|
|
- 배치된 유닛의 생성지연 설정 추가
|
|
- changeset [1633][1642]
|
|
|
|
[10.03.08][10.03.11][완료][작업]
|
|
* Terrain
|
|
<작업내용>
|
|
- 경로 패스정보 구조체인 St_LHUnitPath 에 걷기타입 변수 추가
|
|
- 버전관리를 위한 CLoadHelper::ReadUnitData 함수 수정
|
|
- changeset [1632]
|
|
|
|
[윤영주]
|
|
[10.02.26][10.02.26][완료][작업요청:1429]
|
|
* MapTool
|
|
<작업내용>
|
|
- 트리거 NPCInfo Refresh 버튼 추가
|
|
|
|
[10.02.25][10.02.25][완료][작업요청:1429]
|
|
* MapTool
|
|
<작업내용>
|
|
- 유닛 이름 표시 할때 유닛ID도 표시 하도록 수정
|
|
- 맵 파일 저장 시 디폴트 파일명으로 현재 파일 이름을 불러오는 작업
|
|
|
|
[10.02.18][10.02.24][완료][기타]
|
|
* Terrain
|
|
<작업내용>
|
|
- 오클루젼 컬링의 Update, Picking 관련 함수 추가
|
|
- 오클루젼 컬링 연산시 카메라와 옥트리 노드의 거리에 따라 옥트리 노드의 바운딩 볼륨 축소(보다 많은 컬링을 위하여)
|
|
- 오클루젼 정보의 AABB값 산출과 관련된 코드 변경(기존엔 약간 부정확한 AABB값 산출)
|
|
- 화면 출력을 위한 지형 드로우콜수 저장
|
|
|
|
* MapTool
|
|
<작업내용>
|
|
- 오클루젼 컬링 평면 추가(수정) 시 CTRL키 누르면 수평 배치(눕혀서 배치) 되도록 수정
|
|
- 오클루젼 컬링 평면 회전 기능 추가(기존엔 이동만 되었음)
|
|
- 오클루젼 컬링 바운딩 볼륨이 여러개가 겹치거나 다른 볼륨의 뒷편 또는 내부에 있을 경우
|
|
자동으로 화면에서 가장 가까운 볼륨이 픽킹 되는 현상으로 인해 원하는 바운딩 볼륨이 선택되지 않는 경우가 빈번히 발생.
|
|
이를 보완 하기 위하여 바운딩 볼륨 수정,이동,삭제를 위한 픽킹 도중 '6'키를 누르면 다른 볼륨이 픽킹 되도록 수정.
|
|
- 좌상단에 지형 렌더링 시 한프레임 안의 지형 폴리곤/드로우콜 수 출력 (텍스트 색상의 변경으로 현재 상태 경고)
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2010년 02월 17일
|
|
|
|
- WZENGINEVER 132
|
|
*/
|
|
|
|
[윤영주]
|
|
[10.02.02][10.02.02][완료][작업요청:1425]
|
|
* MapTool
|
|
<작업내용>
|
|
- alt + 오브젝트 축 드래그하면 선택된 오브젝트를 중심으로 회전이동 하는 기능 추가
|
|
- changeset [1569]
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2010년 01월 15일
|
|
|
|
- WZENGINEVER 130
|
|
*/
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2010년 01월 14일
|
|
|
|
- WZENGINEVER 125
|
|
- WZENGINEVER 128
|
|
*/
|
|
|
|
[윤영주]
|
|
[10.01.11][10.01.11][완료][기타작업]
|
|
* Effect
|
|
<작업내용>
|
|
- CreateEffect 함수에 비율(iRate) 인자 추가 changeset [1517]
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2010년 01월 08일
|
|
|
|
- WZENGINEVER 120
|
|
*/
|
|
|
|
[윤영주]
|
|
[10.01.04][10.01.04][완료][기타작업]
|
|
* 3DRenderer
|
|
<작업내용>
|
|
- RenderTexture4SpinGage 함수 추가(지역점령전 관련)
|
|
|
|
[윤영주]
|
|
[09.12.28][09.12.28][완료][기타작업]
|
|
* MapTool
|
|
<작업내용>
|
|
- "각인물을 모두 활성화 시킨다" 액션 트리거 추가 changeset [1499]
|
|
|
|
[이태준]
|
|
[09.12.16][09.12.16][완료][기타수정]
|
|
* ControlsDLL
|
|
<작업내용>
|
|
- 다이얼로그의 마우스 충동영역을 리스트로 설정 할 수 있도록 수정
|
|
+ RECT 를 리스트컨테이너에 담아 해당 영역들과 출동 체크
|
|
+ 컨테이너가 비어 있다면 기존 방식대로 처리함
|
|
+ 다이얼로그(*.iwz) 저장/불러오기를 위한 코드 작성
|
|
|
|
[김민조]
|
|
[09.11.26][09.11.26][완료][버그수정]
|
|
* Effect 툴
|
|
<작업내용>
|
|
- rotation, posrotation 값 추가 오류 수정
|
|
+ degree값을 radian값으로 변환 후 추가
|
|
|
|
[김민조]
|
|
[09.11.25][09.11.25][완료][버그수정]
|
|
* Effect 툴
|
|
<작업내용>
|
|
- 새 파일 로딩시 스케일 기본값이 1로 초기화되는 버그 수정
|
|
- 코스 데이타 이동 안 되는 버그 수정
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2009년 11월 25일
|
|
|
|
- WZENGINEVER 110
|
|
*/
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2009년 11월 17일
|
|
|
|
- WZENGINEVER 106
|
|
- 이펙트 버그 수정
|
|
*/
|
|
|
|
[윤영주]
|
|
[09.11.11][09.11.11][완료][기타]
|
|
* Terrain
|
|
<작업내용> FindPath(),SetPath()시 Path Tile의 Convex 값이 -1일 경우 로그 남기게 수정
|
|
* MapTool
|
|
<작업내용> 로드된 맵에 Path Tile중 convex값이 -1일게 있다면 메세지 박스 출력
|
|
|
|
[송정헌]
|
|
[09.11.02][-][진행][분석]
|
|
* Character Tool
|
|
<작업내용>
|
|
- 바운딩 볼륨때문에 특정 이펙트가 일정거리일때 이펙트 툴에서 나타나지 않는 현상 원인 분석
|
|
|
|
[09.11.02][-][진행][분석]
|
|
* Character Tool
|
|
<작업내용>
|
|
- 드레곤나이트 스피릿슬러그의 이펙트의 방향이 맞지 않는 현상 원인 분석
|
|
|
|
[09.10.30][09.10.30][완료][작업요청]
|
|
* Effect Tool
|
|
<작업내용>
|
|
- 이펙트 툴에서 바디 위치 자동 계산하여 바운딩 박스를 위치시키도록 추가
|
|
+ define : FIRSTPOSITIONAUTOCALCULATION
|
|
|
|
[09.10.29][09.10.29][완료][버그수정]
|
|
* Effect Tool
|
|
<작업내용>
|
|
- 이펙트 툴 이동 탭 에서 element point(점)이 이동 되지 않는 현상 수정
|
|
+ define : CONVERTADDMETHODTOASSIGN
|
|
|
|
[09.10.28][09.10.29][완료][작업요청]
|
|
* Effect Tool
|
|
<작업내용>
|
|
- 바운딩박스 클래스 로직 수정
|
|
+ 스케일과 이동의 이벤트가 서로 종속적인 부분을 독립적으로 분리
|
|
+ 수정 파일 : BoundingBox.cpp
|
|
- 이펙트 툴 바운딩박스 누적 오차 수정
|
|
- 캐스팅으로 인한 미세 이동 오류 수정
|
|
- 엔터키로 인한 변경 및 이벤트가 일어날때 바운딩 박스를 실시간 표현
|
|
|
|
[09.10.22][09.10.27][완료][작업요청]
|
|
* Effect Tool
|
|
<작업내용>
|
|
- 이펙트 툴에서 바운딩 박스를 추가 할 수 있도록 기능 추가
|
|
+ 바운딩 박스의 크기조정, 위치조정 및 저장 기능 추가
|
|
+ 각 크기, 위치에 대한 슬라이더바추가
|
|
BoundingBox.cpp, BoundingBox.h 추가
|
|
|
|
- 이펙트 툴, 엔진 구조체, 클래스별 변수 정리
|
|
+ 업로드 경로 1.D:\p4\client\Dev정헌\분석\엔진&툴\이펙트툴 변수 정리
|
|
2.svn://10.101.102.1/test/sjh0628/effect tool
|
|
|
|
[09.09.18][-][보류][기타]
|
|
* Profile 설계 및 제작
|
|
<작업내용>
|
|
- 툴 또는 게임 내에서의 시간 측정을 위한 독립적인 프로파일러 설계 및 제작
|
|
- 설계내용은 UML 로 작성
|
|
- 업데이트 위치 : svn://10.101.102.1/TEST/sjh0628/ProfileWindow UML( 수시로 업데이트 )
|
|
|
|
[09.07.31][-][보류][작업요청서][-]
|
|
* EffectTool
|
|
<작업내용>
|
|
- random 설정부분 분석
|
|
- 이펙트가 시간의 한계치를 기준으로 랜덤하게 사라지는 기능추가
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2009년 10월 23일
|
|
|
|
- WZENGINEVER 106
|
|
*/
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2009년 10월 22일
|
|
|
|
- WZENGINEVER 105
|
|
*/
|
|
|
|
[김민조]
|
|
[09.10.21][09.10.21][완료][기타]
|
|
* Effect 엔진
|
|
<작업내용>
|
|
- 각 element에서 바운딩 볼륨 갱신 루틴 제거
|
|
- Body만 바운딩 박스 갱신 (자신의 월드 위치 + 기본 바운딩 박스)
|
|
|
|
[송정헌]
|
|
[09.10.20][09.10.21][완료][버그수정]
|
|
* Effect Tool
|
|
<작업내용>
|
|
- 모델을 열때의 입력값인 회전값을 라디안에서 디그리로 변환
|
|
- Visual정보중 Rotation, Posrotation 그래프가 라디안으로 표현되는 것을 디그리로 변경
|
|
|
|
[09.10.19][09.10.19][완료][버그수정]
|
|
* Character Tool
|
|
<작업내용>
|
|
- 키보드로 애니메이션 텝 설정시 기존 이펙트 제거되도록 수정
|
|
- 이펙트추가시 제한된 개수로 재생되는 버그 수정
|
|
- 중복 이펙트 재생수정
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2009년 10월 19일
|
|
|
|
- WZENGINEVER 104
|
|
|
|
- 서버용 3DTerrain_s.dll 로딩시 서버는 3DFileAccess.dll이 필요 없음에도
|
|
불구하고 같이 로딩되는 문제로 인해 해당 코드 수정 후 재 배포
|
|
|
|
- 툴 배포는 하지 않고, 엔진만 배포
|
|
*/
|
|
|
|
[송정헌]
|
|
[09.10.19][09.10.19][완료][버그수정]
|
|
* Character Tool
|
|
<작업내용>
|
|
- 키보드로 애니메이션 텝 설정시 기존 이펙트 제거되도록 수정
|
|
- 이펙트추가시 제한된 개수로 재생되는 버그 수정
|
|
- 중복 이펙트 재생수정
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 2009년 10월 15일
|
|
|
|
- WZENGINEVER 103
|
|
*/
|
|
|
|
[09.10.15][09.10.15][완료][버그수정]
|
|
* Character Tool
|
|
<작업내용>
|
|
- 중복 루프 이펙트의 플레이 시간이 끝날경우 삭제후 다시 생성으로 수정
|
|
|
|
[09.10.14][09.10.14][완료][버그수정]
|
|
* Character Tool
|
|
<작업내용>
|
|
- 캐릭터 툴에서 이펙트 정지후 다시 플레이 할 경우 바로 나오지 않던 현상 수정
|
|
|
|
[김민조]
|
|
[09.10.13][09.10.13][완료][기타]
|
|
* 이펙트 엔진
|
|
<작업내용>
|
|
- 이펙트 레벨 관련 작업
|
|
+ Body생성 정보에 레벨 변수 추가
|
|
+ 이펙트 매니저에 기본 레벨, 생성 레벨 변수 추가
|
|
+ 자동 레벨 조정 옵션이 켜진 경우, 현재 프레임 수에 따라 이펙트 생성 레벨 조정
|
|
이펙트 생성 레벨보다 작거나 같은 이펙트만 생성됨
|
|
|
|
[송정헌]
|
|
[09.10.08][09.10.13][완료][버그수정]
|
|
* Character Tool
|
|
<작업내용>
|
|
- 이펙트툴에서 만든 루프이펙트를 캐릭터툴에서 특정 애니메이션에 붙일경우 느려지는 현상 수정
|
|
- 맵툴에서도 동일한 증상이 나타남, 하지만 게임에서는 정상 작동됨
|
|
|
|
|
|
[김민조]
|
|
[09.10.9][09.10.12][완료][기타]
|
|
* 이펙트 엔진
|
|
<작업내용>
|
|
- 메모리풀 축소 관련 코드 수정
|
|
+ 기존 풀을 제거하고, 새로 생성하던 부분을 기존 풀을 축소하는
|
|
방식으로 변경, 이로 인해 새로 생성시 실패할 일이 없다.
|
|
|
|
[김민조]
|
|
[-][09.10.9][완료][기타]
|
|
* 이펙트 엔진
|
|
<작업내용>
|
|
- 사운드 재생 모듈 복구 및 개선
|
|
- 각 element마다 사운드 재생하던 코드를 body로 옮김
|
|
- 사운드 멈춤, 위치 업데이트 처리 제거
|
|
+ 일단 재생이 되면 끝까지 재생되면 된다는 판단, 억지로 멈출 필요는 없다
|
|
+ 일단 재생이 되면 그 위치에서 그냥 재생되면 된다는 판단, 억지로 위치를
|
|
이동 시켜 줄 필요는 없다.
|
|
+ 이로 인해 코드가 단순 명료해 지고, 사운드 이벤트 수가 현저하게 줄어든다.
|
|
|
|
[김민조]
|
|
[-][09.10.1][완료][기타]
|
|
* 이펙트 엔진
|
|
<작업내용>
|
|
- 이펙트 엔진 리뉴얼
|
|
- 성능 개선 및 버그 수정
|
|
- 흐름 정리 및 중복 코드 제거
|
|
- 정확히 동작하도록 개선
|
|
|
|
<성능개선>
|
|
- SetElementInfo()에서 정보 복사를 없애고, 단순 포인터 대입으로 변경
|
|
+ 각 element마다 생성, 이동 정보를 복사하는 비용이 성능에 영향을 줄 정도로 크다.
|
|
+ 대량으로 이펙트가 터지는 상황에서 순간 랙이 훨씬 줄었음.
|
|
|
|
- Sprite에서 SetBillboard()를 프레임당 2번씩 호출하던 것을 1번으로 수정
|
|
|
|
- 이펙트 매니저 Move()에서 화면에 그려질 Body의 핸들을 저장 했다가 렌더링시
|
|
그 핸들로 다시 Body를 얻어와서 그리던 부분을 Body에 렌더링 관련 변수를
|
|
두고 그 변수를 통해 렌더링 여부를 결정하도록 수정
|
|
|
|
- 절두체의 Far 평면을 앞으로 당겨서 멀리 있는 이펙트들은 시뮬레이션 및
|
|
렌더링을 안 하도록 수정
|
|
|
|
- 각 element의 UpdateBoundingVolume()함수의 알고리즘을 단순화 시킴
|
|
+ 전부 다 계산한다고 해서 정확한 BoundingVolume도 아니다.
|
|
+ 일부 몇 개의 데이타만 가지고도 어느정도 효과를 얻을 수 있다.
|
|
|
|
- 코스 이동시 이전 코스 값을 매 프레임 재 계산하던 부분 수정
|
|
- Chain, FlatChain에서 모든 점의 월드 좌표를 매 프레임 계산하던 부분 수정
|
|
|
|
<버그수정>
|
|
- 이펙트가 엉뚱한 방향으로 날아가던 버그 수정 (ex: 켈베로스가 불 뿜을 때)
|
|
- 이펙트 반복시 깜빡이는 듯한 버그 수정
|
|
- 기타 코딩 실수 및 오류 수정
|
|
|
|
<흐름정리>
|
|
- 이펙트 생성 - CreateEffect()
|
|
- 월드 크기/회전/위치 설정 - SetResultMatrix()
|
|
- 시뮬레이션 - Move()
|
|
- 렌더링 - Render()
|
|
|
|
- 이펙트가 태어나는 곳, 재 시작 하는 곳을 전부 Move()로 옮김
|
|
+ CreateEffect()시에는 단순히 생성만 (변수 초기화 등)
|
|
|
|
- 흐름을 명확하게 정리함으로써 불 필요한 중복 코드 제거
|
|
+ ex: 한 프레임에서 UpdateBoundingVolume() 두 번씩 호출
|
|
한 프레임에서 SetBillboard() 두 번씩 호출
|
|
|
|
- 코드 분석 용이
|
|
|
|
<클래스 상속 관계 정리>
|
|
- 기존 만능이었던 CElementBase를 쪼개서 CElementParticle 추가
|
|
- ElementBase에는 기본적인 정보만 포함
|
|
- ElementParticle에는 위치/회전/크기 등 Particle에 관련된 정보들 포함
|
|
- Sprite, Mesh, Chain은 ElementParticle을 상속 받도록 수정
|
|
- Decal, FlatChain, Weather은 ElementBase를 상속 받도록 수정
|
|
|
|
[윤영주]
|
|
[09.09.22][09.09.24][완료][작업요청]
|
|
* MapTool
|
|
<작업내용>
|
|
- 지역점령전 내에서 사용될 트리거 추가
|
|
+ "오브젝트를 파괴하면" Condition Trigger
|
|
+ "오브젝트의 HP가 00% 이하라면" Condition Trigger
|
|
+ "오브젝트의 HP를 00% 깎는다" Action Trigger
|
|
|
|
- "지역점령전" 타일 속성 추가
|
|
|
|
[송정헌]
|
|
[09.09.11][09.09.11][완료][버그수정]
|
|
* InterfaceTool
|
|
<작업내용>
|
|
- Ctrl 키를 이용한 Controls 다중 선택 오동작 수정
|
|
|
|
[09.09.01][09.09.05][완료][분석]
|
|
* EffectTool & effect
|
|
<작업내용>
|
|
- 엔진과 중복되는 툴에서의 저장,로드 함수 제거작업이 불가능
|
|
|
|
[이도형]
|
|
[09.08.24][][완료][요청사항][]
|
|
* ControlsDLL
|
|
<작업내용>
|
|
- CCtrlMultilineEditWZ에 행 높이 m_nHeight 를 지정할 수 있도록 SetHeight추가
|
|
<수정파일>
|
|
- CtrlDxEdit.cpp/h
|
|
|
|
[김민조]
|
|
[09.08.20][09.08.20][완료][기타]
|
|
* CharacterTool
|
|
<작업내용> 메모리릭 제거
|
|
- DllLoader에서 생성된 MapLoader가 제거되지 않았었음
|
|
|
|
* EffectTool
|
|
<작업내용> 메모리릭 제거
|
|
- LinkManager에서 생성된 MapLoader가 제거되지 않았었음
|
|
- CDrawObjectBar::Initialize()내 m_pMemDC 새로 생성시 기존 데이타가
|
|
남아 있는 경우 있음 -> 제거 후 생성하게 수정
|
|
|
|
* ClassTestView
|
|
<작업내용>
|
|
- 디버그 모드에서 종료시 에러 발생
|
|
- CClassTestViewApp::InitInstance()내 AfxOleInit() 주석 처리
|
|
|
|
[김민조]
|
|
[09.08.20][09.08.20][완료][기타]
|
|
* 툴전체, 익스포터, 임포터
|
|
<작업내용>
|
|
- 엔진 DLL 링크 방법을 명시적 링크에서 암시적 링크로 변경 및 관련 코드 수정
|
|
|
|
[김민조]
|
|
[09.08.19][09.08.19][완료][기타]
|
|
* 엔진 전체
|
|
<작업내용>
|
|
- 엔진 DLL 링크 방법을 명시적 링크(LoadLibrary)에서 암시적 링크로 변경
|
|
- 명시적 방법으로 링크하는 경우, 해당 dll내 클래스 멤버 함수를 호출할 수
|
|
없는데 이를 해결 하기 위해 어거지로 dll내 클래스 멤버 함수를 virtual로
|
|
선언해서 에러를 피하고 있었음.
|
|
- 전(WzEngine시절)에는 OpenGL, DX 용 dll을 따로 제작해서 사용했기 때문에,
|
|
실시간으로 두 dll 중 하나를 선택하는 구문이 필요했으나, 현재는 불 필요
|
|
- 따라서 명시적 링크를 사용할 필요가 없어졌음
|
|
|
|
[윤영주]
|
|
[09.08.10][][진행중][기타]
|
|
* 3DRenderer
|
|
<작업내용>
|
|
- 지역점령전 작업의 선작업으로 성능향상을 위한 렌더러 분석 및 수정
|
|
|
|
[김민조]
|
|
[09.08.07][09.08.07][완료][기타]
|
|
* ProgramCommon
|
|
<작업내용>
|
|
- wzmemoryband.h, wzmemorypool.h 추가
|
|
|
|
* Effect
|
|
<작업내용>
|
|
- memtypeband.h, memorypoolfactory.h 제거
|
|
- memorymanager.h/cpp 수정 -> wzmemorypool 사용하도록
|
|
|
|
[윤영주]
|
|
[09.08.06][09.08.06][완료][버그수정]
|
|
* Effect
|
|
<작업내용>
|
|
- SoundInfoManager에 Clear() 함수 추가
|
|
- EffectManager::RefreshMemPool()내에서 SoundInfoManager::Clear()함수 호출
|
|
[김민조]
|
|
[09.08.06][09.08.06][완료][기타]
|
|
* 3DFramework
|
|
<작업내용>
|
|
- St_ScreenInitialParameters 구조체내 m_iRendererType, m_bLockSizeMove 제거
|
|
- Load/SaveParameter() -> Load/Save3DSetupInfo()로 변경하고 내용 정리
|
|
FullScreen옵션도 Load/SaveScreenFormatAndRenderOption() 함수로 옮김
|
|
|
|
[김민조]
|
|
[09.08.05][09.08.05][완료][기타]
|
|
* 3DFramework
|
|
<작업내용>
|
|
- applast.h내 Load3DRendererLibrary() 제거 - 불 필요한 함수
|
|
- St_AppCreateParam 선언을 appbase.h에서 appdraw.h로 내림
|
|
appbase.h내 Create() 인자 리스트에서 St_AppCreateParam* 제거
|
|
- appbase.h/cpp내 InitAppCreateParam() 제거 - 안 쓰임
|
|
|
|
- 스크린 전환 관련 코드 수정
|
|
+ appdraw.h내 m_bToggleFullScreen 변수 제거
|
|
+ appdraw.h내 ToggleFullScreen() 제거
|
|
+ WM_KEYDOWN 메시지 발생시 m_pDraw->ToggleFullScreen() 직접 호출
|
|
|
|
|
|
[이지연]
|
|
[09.08.05][09.08.05][완료][기타]
|
|
* 3DFramework
|
|
* 3DRenderer
|
|
<작업내용>
|
|
- CAppDraw::LoadParameter 함수, LoadScreenFormatAndRenderOption 함수 수정
|
|
+ 3dsetup.ini 파일 로딩시 디폴트 값을 현재 Perforce의 업데이트버전에 있는 3dsetup.ini 파일의 값을 참고하여 수정함
|
|
+ 클라이언트 설치 파일 배포시 실수로 3dsetup.ini가 누락되는 경우에도 이상현상이 발생하지 않도록 하기 위해.
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 090804
|
|
*/
|
|
|
|
[김민조]
|
|
[09.08.04][09.08.04][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- LoadDDS() 코드 수정
|
|
- block size계산 루틴 제거, 쓰이지 않음
|
|
|
|
[김민조]
|
|
[09.08.03][09.08.03][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- LoadTGA() 재 작성
|
|
- 파일 로딩 중 실패시 메모리릭 발생 제거
|
|
- 옵션을 고려해서 정확한 사이즈로 버퍼 생성
|
|
+ 로딩 옵션으로 인해 대상 컴포넌트 수가 줄어드는 경우도,
|
|
소스 컴포넌트 수만큼 버퍼 생성해서 쓸데없이 메모리를 낭비하고 있었음
|
|
|
|
[이태준]
|
|
[09.07.31][09.07.31][완료][기타]
|
|
* ControlsDLL
|
|
<작업내용>
|
|
- [09.07.15][작업요청][1371] 불필요한 UI 텍스처 해제기능 추가 작업 수정
|
|
ControlWZ::OnDraw() 호출시 필요한 텍스쳐가 로드되어 있지않으면 로드하는 코드를
|
|
DialogWZ::ShowWindowWZ() 호출시점으로 옮김
|
|
|
|
|
|
[김민조]
|
|
[09.07.30][09.07.30][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- SaveJpeg() 함수 제거 - 현재 쓰이는 부분이 없어서 일단 제거
|
|
- LoadImage() 함수 내, CreateStreamOnHGlobal()에서 2번째 인자(fDeleteOnRelease)를
|
|
TRUE에서 FALSE로 변경, 호출한 쪽에서 메모리 핸들을 해제(GlobalFree)하는 경우 FALSE가 맞음
|
|
- ResizeMipmapBuffer() 함수 내, numComponents가 4일때, 대상의 width 또는 height
|
|
가 1인지를 체크하는 문장 오류 수정 - 원본 크기가 1인지를 비교하고 있었음
|
|
- ResizeMipmapBuffer() 함수 내, 대상 width 또는 height가 1인 경우 소스 포인터를
|
|
동일하게 증가시키던 것을 각각 다르게 증가시킴
|
|
세로로 긴 이미지(width가 1)인 경우는 한 줄 값을 더 증가시켜 줘야 정확하게 샘플링 함
|
|
|
|
[김민조]
|
|
[09.07.29][09.07.29][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- Math_GetOrthogonalVectors() 버그 수정
|
|
(주어진 벡터에 수직인 두 개의 벡터를 구해 주는 함수)
|
|
+ 주어진 벡터의 x, y, z가 모두 같은 값인 경우, normal벡터를 구하지 못한다.
|
|
+ temp 벡터 생성시 초기 값 수정
|
|
(in->z, in->x, in->y) --> (-in->z, in->x, in->y)로 수정
|
|
|
|
- Math_GetOrthogonalVectors()에서 4번째 인자 bUseOldResult제거
|
|
+ 이전 값 사용이라는 BOOL 변수가 있다는 거 자체가 말이 안되는 것 같다.
|
|
+ 4번째 인자를 사용하는 곳은 체인 이펙트 한 군데 였고, 해당 부분은
|
|
해당 부분에 맞게 수정했다.
|
|
|
|
- Math_GetRandomPosInBoundingVolume() 버그 수정
|
|
+ 거리가 0인 경우라도, 구의 중심 좌표를 더해 줘야 하는데 그냥 리턴해 버렸음
|
|
+ 로그 확인 결과, 이런 경우가 꽤 많이 있었음, 그 전까지 원점에 이펙트를 생성한
|
|
경우가 많았다는 얘기
|
|
|
|
- DiscAccessFileToHBuffer()내 GlobalAlloc() 함수 인자를 GMEM_FIXED에서 GMEM_MOVEABLE로 수정
|
|
+ GlobalLock(), GlobalUnlock(), CreateStreamOnHGlobal() 함수 모두
|
|
GMEM_MOVEABLE로 할당된 메모리에 한해서 사용되는 함수
|
|
|
|
[김민조]
|
|
[09.07.27][09.07.27][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- Math_GetChaosRotation() 제거 - 현재 안 쓰이고 있음, 일단 제거
|
|
|
|
[송정헌]
|
|
[09.07.27][09.07.27][완료][버그수정]
|
|
* EffectTool
|
|
<작업내용>
|
|
- 이펙트파일(.ewz) 본리스트를 읽기전 wza읽기 버튼을 누를때 중지되는 버그 수정
|
|
|
|
[김민조]
|
|
[09.07.23][09.07.23][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- Generate_BvSphere()에서 const BvAABB* pbaabb인자 제거 (안 쓰임)
|
|
- Generate_BvSphere_ByAABB() 제거 (안 쓰임)
|
|
- Generate_BvSphere_Ritter() 제거 - Generate_BvSphere()로 통합
|
|
본래 의도는 Generate_BvSphere() 내부에서 알고리즘별로 다르게
|
|
동작하도록 하려고 한 것 같으나, 현재까지 Generate_BvSphere_Ritter()
|
|
만을 사용했었기 때문에, Generate_BvSphere_Ritter()를 제거하고
|
|
Generate_BvSphere()로 통합 했음.
|
|
|
|
[김민조]
|
|
[09.07.22][09.07.22][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- Intersect_Ray_TriangleListIndexed() 함수내 Normal 계산하는 부분을
|
|
함수 끝으로 옮김
|
|
- 광선과 충돌하는 삼각형이 발견될 때마다 Normal을 계산하는 것은
|
|
성능상으로도 손해다
|
|
|
|
[김민조]
|
|
[09.07.21][09.07.21][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- CutMeshWithFrustum() -> CutTriangleWithFrustum() 함수명 변경
|
|
점 3개만 자를 수 있는 구조라, Mesh란 이름이 적절치 못하다.
|
|
|
|
[김민조]
|
|
[09.07.20][09.07.20][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- Capsule 관련 함수들 제거
|
|
- 현재 쓰이지 않고 있고, 함수 구현이 완벽하지 않아 일단 제거
|
|
- 후에 쓰일 가능성이 있기는 하지만, 현재로선 모르는 일이기 때문에
|
|
제거 했고, 나중에 쓸 경우, 다시 검증 후 추가할 것
|
|
|
|
- As2D_GetCrossPointOfTwoLine() - 2D상에서 두 직선의 교차점 얻는 함수
|
|
평행한 경우, 두 직선이 일치하는 경우는 모든 점이 교차점이고
|
|
그렇지 않은 경우는 교차점이 없는데도 불구하고 특정 점을 리턴하고 있다.
|
|
여러 곳에서 사용하고 있기 때문에, 함수 수정은 하지 않았고 일단 로그만 추가함
|
|
|
|
[윤영주]
|
|
[09.07.15][09.07.17][완료][작업요청] 오브젝트 리스트 코멘트 기능 추가
|
|
* MapTool
|
|
<작업내용> 오브젝트 리스트 스크립트의 파일 경로 뒷쪽에 코멘트를 기입하면 툴상에서 보여주는 기능 추가
|
|
+ 사용방법: twn1 map_tringel\tringel_windmill_new070911.WZU //다수사용자제-풍차
|
|
+ 주의사항
|
|
1. 파일 경로 뒷쪽에서 한칸 뛴후 코멘트 기입 하여야 합니다.
|
|
ex) tringel_windmill.WZU //풍차 - O, tringel_windmill.WZU//풍차 - X
|
|
|
|
2. 코멘트는 "//"로 시작하여야 합니다.
|
|
|
|
3. 뛰워쓰기 지원하지 않습니다.
|
|
ex) //다수사용자제 - O, //다수 사용 자제 - X
|
|
|
|
4. ID와 경로를 주석처리하는 기능은 지원하지 않습니다.
|
|
ex) //twn1 tringel_windmill.WZU - X
|
|
|
|
<수정파일> ObjectEdit.h , ObjectEdit.cpp , Resource.h , WzMapEditor.rc
|
|
|
|
[윤영주]
|
|
[09.07.17][09.07.17][완료][버그수정] 오브젝트, 트리 컬러 변경 기능 작업 이후 툴상에서 오브제트,트리 검게 나오던 버그 수정
|
|
* 3DTerrain
|
|
<작업내용> 오브젝트,트리 정보 읽어올때 컬러값이 없을 경우(예전파일들) 0xffffffff로 셋팅
|
|
<수정파일> LoadHelper.cpp
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 090716
|
|
|
|
- 클라이언트 0904 메이저 빌드에 맞춰 프로그램팀만 배포
|
|
- 툴 배포는 이펙트 관련 작업이 마무리 된 후 정식 배포 예정
|
|
*/
|
|
|
|
[김광수]
|
|
[09.07.16][09.07.16][완료][버그수정] 서브타입시에 디퓨즈맵변경시 인첸트효과 찢어지는현상
|
|
* 3DRenderer
|
|
<작업내용>
|
|
- 서브타입시에는 추가한패스만큼 메쉬를 랜더하는데 이때 (외부,내부,애니텍스쳐)텍스쳐가
|
|
기본 디퓨즈스테이지에 올라가기때문에 이때는 디퓨즈맵핑텍스쳐를 바꾸면안됨
|
|
<수정파일>
|
|
- DrawUnitRenderer.cpp
|
|
|
|
|
|
[이태준]
|
|
[09.07.15][09.07.15][완료][작업요청][1371] 불필요한 UI 텍스처 해제기능 추가
|
|
* ControlsDLL
|
|
<작업내용>
|
|
- [09.07.06] 완료작업에 대한 오류 수정 작업
|
|
디파인 제거
|
|
|
|
[김민조]
|
|
[09.07.14][09.07.14][완료][기타]
|
|
* Common
|
|
<작업내용>
|
|
- QuaternionRotation() 호출시 인자로 들어오는 벡터(축 벡터) Normalize시킴
|
|
- Normalize되지 않은 벡터가 들어오는 경우, 잘못된 quaternion값 반환
|
|
|
|
- MatrixRotationZXY() 버그 수정
|
|
-> yaw, pitch, roll순으로 각도를 입력하여 최종 회전행렬을 구하는 함수
|
|
|
|
검증 : D3DXMatrixRotationYawPitchRoll() 함수에서 구해진 행렬과
|
|
각 축을 따로 따로 회전한 행렬을 y * x * z순으로 곱한 최종 행렬과
|
|
MatrixRotationZXY() 함수에서 구해진 행렬이 전부 같아야 함
|
|
|
|
- 자세한 것은 UnitTester/wzmathtest.cpp 파일 참조
|
|
|
|
[김민조]
|
|
[09.07.13][-][진행][기타]
|
|
* UnitTester
|
|
<작업내용>
|
|
- Common내 코드 검증
|
|
|
|
[송정헌]
|
|
[09.07.09][09.07.10][완료][버그수정][-]
|
|
* EffectTool
|
|
<작업내용>
|
|
- 이펙트파일(.ewz) 을 재생중간에 저장시 오류버그를 중지 후 저장하도록 수정
|
|
|
|
[09.06.30][09.07.10][완료][작업요청서][-]
|
|
* EffectTool
|
|
<작업내용>
|
|
- 맥스에서 작업한 애니메이션 element(점) 읽어들이는 기능
|
|
- element(점)소수2자리까지 표현 및 적용
|
|
- 캐릭터의 본과 연결하기위한 본인덱스,부모인덱스,노드이름 표시
|
|
- max 에서 작업된 계층구조에서 원하는 노드의 애니메이션 파일을 로딩
|
|
하여 element 경로 구현
|
|
- 기타 애니메이션 전체 애니메이션 속도 및 element(점) 개수 조절기능 추가
|
|
|
|
[이태준]
|
|
[09.07.03][09.07.06][완료][작업요청][1371] 불필요한 UI 텍스처 해제기능 추가
|
|
* ControlsDLL
|
|
<작업내용>
|
|
- CtrlClientWZ::OnLoad() 호출시 텍스처 로드를 생략
|
|
OnDraw()호출시 턱스처를 사용하지만 로드가 되어 있지 않은 상태면
|
|
텍스처를 로드하도록 수정
|
|
필요에 따라 CtrlClientWZ 의 텍스처를 해제할 수 있도록 인터페이스 제공
|
|
- DialogWZ::ReleaseDialogTexture() 작성
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 090707
|
|
*/
|
|
|
|
[김민조]
|
|
[09.07.07][09.07.07][완료][기타]
|
|
* 전체
|
|
<작업내용>
|
|
- 서버 컴파일 에러 여부 확인
|
|
- 3DTerrain.h에 임시 include 추가 - 제거 예정
|
|
- Common에 includeall_newworld.h 다시 추가 - 제거 예정
|
|
|
|
[송정헌]
|
|
[09.06.29][09.07.05][완료][버그수정]
|
|
* EffectTool
|
|
<작업내용>
|
|
- 이동에서 element(점) 을 이동시킬때 한번더 위치가 누적되어 옮겨지는 현상
|
|
<디파인추가>
|
|
- NOTAPPLYPOSMOVE 현재 적용되어 있지만 큰 문제가 없을경우 삭제 예정
|
|
|
|
[김민조]
|
|
[09.07.03][09.07.03][완료][배경팀요청]
|
|
* MaxExporter
|
|
<작업내용>
|
|
- 옵션에 useType추가
|
|
+ 캐릭터팀은 기존 익스포터 그대로 가기를 원하고,
|
|
배경팀은 개선을 원해서, 고심 끝에 일반적이면서
|
|
양 팀에 특화된 기능을 구현할 수 있는 옵션 추가
|
|
|
|
- 배경팀 요청 처리
|
|
+ 패널에서 익스포트시 선택된 노드가 있는 경우 선택된 노드만
|
|
선택된 노드가 없는 경우 전체가 익스포트 되도록 수정
|
|
+ 지형 저장시 숨겨진 노드도 전부 출력하도록 수정
|
|
+ 본 출력시 선택되지 않은 본은 출력되지 않게 수정
|
|
|
|
[김민조]
|
|
[09.07.02][09.07.02][완료][기타]
|
|
* UnitTester
|
|
<작업내용>
|
|
- 단위 테스트 코드 작성
|
|
|
|
<테스트 클래스>
|
|
- WzColor, WzFastMath, WzMatrix, WzQuaternion
|
|
|
|
[윤영주]
|
|
[09.07.01][09.07.02][완료][성능개선]
|
|
* Effect
|
|
<작업내용>
|
|
- 절두체 외부에 있는 이펙트 처리 최소화
|
|
+ 절두체 외부에 있는 이펙트의 경우 위치 이동과 수명에 관한 처리만 하도록 수정
|
|
<작업파일>
|
|
- EffectManager.h , EffectManager.cpp , EffectBase.cpp
|
|
|
|
[김민조]
|
|
[09.07.01][09.07.01][완료][기타]
|
|
* ProgramCommon
|
|
<작업내용>
|
|
- 쓰레기 값을 리턴하는 클래스에 멤버 변수로 m_dummyData추가
|
|
구조 자체가 그렇게 돼 있고, 기존에 이미 그렇게 써 왔기 때문에
|
|
어쩔 수 없이 쓰레기 값을 리턴해야 한다면 정적 멤버 변수로
|
|
쓰레기 값을 하나 두고, 그 값을 리턴하는게 좋다고 판단
|
|
|
|
<작업파일>
|
|
- wzarray.h, wzbtree.h, wzhandlemanager.h, wzhashtable.h, wzlist.h
|
|
|
|
[김민조]
|
|
[09.06.30][09.06.30][완료][버그수정]
|
|
* ProgramCommon
|
|
<작업내용>
|
|
- WzHandleManager내 Release시 null데이타로 설정
|
|
+ magicNo가 0인 경우, 쓰레기 데이타임에도 불구하고
|
|
외부에서 Idx계열 함수를 통해 직접 데이타를 얻는 경우
|
|
데이타가 유효한 것처럼 오판되는 경우가 있어서 nullData를 설정
|
|
+ T가 뭐가 될지 모르는 상황인데, memset을 통해 nullData로 만든다는
|
|
자체가 굉장히 위험한데, 일단은 오류를 피하기 위해 어쩔 수 없이 그냥 감
|
|
|
|
- WzHandleManager내 Release시 빈번한 Clear호출 조정
|
|
+ 로그 검색 결과, 하나 할당하고 하나 해제하는 경우가 많았고
|
|
이 경우마다, 계속 Clear가 호출 되는데, 이는 오히려 성능을 저하
|
|
시킬 수 있음
|
|
|
|
* MapTool
|
|
<작업내용>
|
|
- GetGrassWave()함수 복구
|
|
- 엔진 리뉴얼 중 물리 엔진 제거로 인해, 임시로 막아 두었던
|
|
GetGrassWave()호출을 물리 엔진에서 로컬로 복사해 와 로컬 함수를
|
|
호출 하도록 수정
|
|
|
|
<디파인제거>
|
|
- ENABLE_PHYSICS
|
|
- USE_PATHENGINE
|
|
|
|
[김민조]
|
|
[09.06.29][09.06.29][완료][정리]
|
|
* UnitTester
|
|
<작업내용>
|
|
- 1차 엔진 리뉴얼에 따른 include 정리
|
|
|
|
* 3DFileAccess
|
|
* 3DFrameWork
|
|
* 3DRenderer
|
|
* 3DTerrain
|
|
* ControlsDLL
|
|
* Effect
|
|
<작업내용>
|
|
- 외부 파일(se_logcreateinfo.txt)에서 로그 타입 및 레벨 설정하게 수정
|
|
- 에러 발생시 재 컴파일 없이 외부에서 수정 후 바로 확인 가능토록 하게 하기 위함
|
|
- 기본 값 : File(타입), WZERR(레벨)
|
|
- LAST_RELEASE인 경우는, 로그 자체를 생성 안 함
|
|
|
|
[윤영주]
|
|
[09.06.29][09.06.29][완료]
|
|
* MapTool, 3DTerrain
|
|
<작업내용>
|
|
- 못가는 타일위(바운딩박스, 바운딩스피어)에 트리거 유닛 배치 시 경고 메세지 출력
|
|
* MapTool
|
|
<작업내용>
|
|
- * 맵오브젝트, 스피드트리 컬러 변경 기능 추가
|
|
* 3DTerrain
|
|
<작업내용>
|
|
- 쉐도우 맵 렌더링 관련 최적화 작업
|
|
+ 쉐도우 맵에 특화된 절두체 생성 및 사용
|
|
+ 쉐도우 맵 렌더링 시 맵 텍스쳐 별 버텍스 소팅 루틴 스킵
|
|
* 3DTerrain
|
|
<작업내용>
|
|
- 프러스텀 컬링 최적화 작업
|
|
+ Far값에 의한 컬링 부분 수정
|
|
|
|
[송정헌]
|
|
[09.06.22][09.06.26][완료][버그수정]
|
|
* EffectTool
|
|
<작업내용>
|
|
- 복수선택후 element(포인트) 추가하는경우 패스가 생기지 않는 버그 수정
|
|
|
|
<디파인추가>
|
|
- SELECTRECTMOVEANDROTATION
|
|
|
|
[송정헌]
|
|
[09.05.26][09.06.26][완료][작업요청서][-]
|
|
* EffectTool
|
|
<작업내용>
|
|
- 마우스로 드래그후 선택영역의 element(포인트) 다중선택 및 회전
|
|
- 선택되있던 element(포인트) 를 한번 더 선택하면 선택 해제됨
|
|
- EffectTool 분석도 같이 진행함
|
|
|
|
<디파인추가>
|
|
- SELECTRECTMOVEANDROTATION
|
|
|
|
[윤영주]
|
|
[09.06.26][09.06.26][완료]
|
|
* Effect
|
|
<작업내용>
|
|
- UnLoadEffectFromFile(char* pszTxtFileListPath) 추가
|
|
+ 클라이언트에서 옵션에 따라 이펙트 추가/삭제 시 필요
|
|
+ 이펙트 생성 정보 삭제시 물려있는 이펙트 바디도 같이 삭제
|
|
* MapTool
|
|
<작업 내용>
|
|
- 맵 오브젝트에 부여했던 UserID 삭제 가능하게 수정
|
|
+ UserID 기입란에 아무것도 넣지 않으면 INVALID_WZID로 대체
|
|
|
|
[김민조]
|
|
[09.06.26][09.06.26][완료][정리]
|
|
* SET(Sun Engine Tester)
|
|
<작업내용>
|
|
- include 최종 정리
|
|
|
|
* 엔진 내 모든 프로젝트(툴, 익스포터 포함)
|
|
<작업내용>
|
|
- 프로젝트 속성 변경
|
|
+ 경고를 오류로 처리
|
|
|
|
[김민조]
|
|
[09.06.25][09.06.25][완료][정리]
|
|
* CharacterTool
|
|
* MapEditor
|
|
* EffectTool
|
|
* InterfaceTool
|
|
<작업내용>
|
|
- include 최종 정리
|
|
- 22일 1차 작업시 엔진 관련 모든 헤더를 일단 SunEngine.h로
|
|
옮겼던 것을 꼭 필요한 것만 놔두고 각각 필요한 곳으로 재배치
|
|
- SunEngine.h에 엔진 관련 모든 헤더가 있는 경우, 엔진 상에서
|
|
해당 파일을 조금만 수정해도 툴 입장에서는 풀 컴파일하게 됨
|
|
|
|
[김민조][이도형]
|
|
[09.06.24][09.06.24][완료][정리]
|
|
* 엔진 툴 전부
|
|
<작업내용>
|
|
- 코드 내 #pragma warning( disable : xxxx ) 제거
|
|
- 위 문장 제거 후 발생하는 모든 warning 제거
|
|
- 헤더 파일 내 using namespace std 제거
|
|
|
|
[김민조]
|
|
[09.06.23][-][진행][기타]
|
|
* Common
|
|
<작업내용>
|
|
- 코드 리뷰
|
|
|
|
[김민조]
|
|
[09.06.23][09.06.23][완료][정리]
|
|
* MapEditor
|
|
<디파인제거>
|
|
- DEFINE_EEM_CAM_MANAGER
|
|
|
|
[김민조][이도형]
|
|
[09.06.22][09.06.22][완료][정리]
|
|
* 전체 툴
|
|
<작업내용>
|
|
- 엔진 리뉴얼 작업에 따른 기존 include 조정
|
|
|
|
- SunEngine.h 추가
|
|
+ 엔진 헤더 파일들 추가
|
|
+ 컴파일을 위해 임시로 엔진 관련 파일들은 전부 추가함
|
|
+ 시작일 뿐이다. 이렇게 서서히 코드 정리 및 안정화를 시킨다.
|
|
|
|
- typedef.h 추가
|
|
+ 각 Tool에서 사용되는 공유디파인 및 타입 정의
|
|
+ 여기서 SunEngine.h 포함
|
|
|
|
- stdafx.h 수정
|
|
+ typedef.h 추가 및 관련 내용 제거
|
|
|
|
- 모든 파일 include 정리(1차)
|
|
+ include 출발점을 각 툴 소스폴더로 한다.
|
|
+ \\ --> / 로 통일
|
|
+ afx 계열 전부 stdafx.h 로 이동 또는 제거
|
|
|
|
* CharacterTool
|
|
<작업내용>
|
|
- InclueEngine.h 제거
|
|
+ 내용들 전부 SunEngine.h로 이동
|
|
|
|
<디파인제거>
|
|
- ENABLE_PHYSICS_CLOTH
|
|
- ENABLE_PHYSICS_CLOTH2
|
|
- ENABLE_PHYSICS
|
|
|
|
[김민조]
|
|
[09.03.02][09.06.17][완료][정리]
|
|
* 전체 프로젝트
|
|
<작업내용>
|
|
- 전체 엔진 프로젝트 include 정리
|
|
- ProgramCommon, Common프로젝트를 제외하고 전부 프리컴파일 헤더를
|
|
사용하도록 변경
|
|
|
|
- 전체 엔진 warning 제거
|
|
- 현재 적용중인 디파인 제거
|
|
|
|
- 물리 엔진 제거(Physics)
|
|
+ 풀 흔들기만 적용하고 있었음
|
|
+ 해당 함수만 사용되는 곳으로 옮길 예정(클라이언트, 맵툴)
|
|
|
|
- 인터페이스 프로젝트(ControlsDLL) 폴더 이동
|
|
+ 혼자만 떨어져 있는 것을 다른 프로젝트와 마찬가지로
|
|
3DEngine 폴더 밑으로 옮김
|
|
|
|
- 프로젝트 속성(C/C++ / 최적화) 변경 - Release, PreRelease
|
|
+ 최적화 : 사용자 지정
|
|
+ 전역 최적화 : 예(/Og)
|
|
+ 인라인 함수 확장 : 적합한 것 모두 확장(/Ob2)
|
|
+ 내장 함수 사용 : 예(/Oi)
|
|
+ 부동 소수점 일치 : 기본 일관성
|
|
+ 크기 또는 속도 : 코드 크기 우선(/Os)
|
|
+ 프레임 포인터 생략 : 예(/Oy)
|
|
+ 파이버 안전 최적화 사용 : 아니오
|
|
+ 프로세서에 맞게 최적화 : Pentium 4 이상(/G7)
|
|
+ Windows 응용 프로그... : 아니오
|
|
|
|
+ 수학 함수가 무지막지하게 호출되는 경우 엄청난 속도 향상
|
|
(ex: Map export시 vector비교)
|
|
|
|
* ProgramCommon
|
|
<작업내용>
|
|
- 로그 추가
|
|
+ 레벨 : WZERR, WZWAR, WZINF, WZDBG, WZTRA
|
|
+ 사용 : WZLOG( 레벨, "로그내용", 파라미터들 )
|
|
|
|
- Base 클래스 재작성 및 파일 분리
|
|
+ CWzArray, CWzBinTree, CWzBTree, CWzCriticalSection,
|
|
CWzHandleManager, CWzHashTable, CWzList, CWzQueue,
|
|
CWzSingleton, WzVector
|
|
|
|
- 기타 클래스 및 파일 재작성
|
|
+ CClock, CDiscAccess, CScriptRead, CWzArchive
|
|
+ filenbuffer.h/cpp
|
|
|
|
- 엔진 버전 정의 파일(wzenginever.h) 추가
|
|
+ #define WZENGINEVER 100
|
|
|
|
- 타입 정의 파일(wztypedef.h) 추가
|
|
+ 로그 핸들러 포함 - 엔진 내 모든 파일은 로그를 쓸 수 있어야 함
|
|
+ 로그 핸들러를 제외한 엔진 내 모든 파일이 참조(포함)할 것
|
|
+ 기존 wzdatatype.h --> typedef.h 포함 (제거 예정)
|
|
|
|
- 안 쓰거나 불 필요한 파일들 제거 - 개선 여지가 있는 파일들도 일단 제거
|
|
+ DebugAngel.h/cpp, SmartText.h/cpp, WzMemoryTracker.h/cpp
|
|
WzNewDef.h, WzNewUndef.h
|
|
|
|
* Common
|
|
<작업내용>
|
|
- 베이스 클래스(또는 파일) 코드 정리 및 분리
|
|
+ wzcolor.h, wzmatrix.h, wzquaternion.h, wzsimplemesh.h, wzuvvert.h
|
|
wzmath.h/cpp, wzfastmath.h/cpp, wzutil.h/cpp
|
|
+ 코드 리뷰 필요(추후 예정)
|
|
|
|
- wzcommontypedef.h 추가
|
|
+ common 프로젝트 및 외부 프로젝트에서 참조할 내용 정의
|
|
+ 엔진 프로젝트는 본 파일 포함할 것
|
|
|
|
- wzsharedef.h 추가
|
|
+ 두개 이상의 프로젝트에서 동시에 적용 되는 define이 있는 경우 본 파일에 정의
|
|
+ wzcommontypedef.h에서 본 파일 포함
|
|
|
|
<디파인제거>
|
|
- OPTIMIZATION_MATRIX
|
|
|
|
* 3DFileAccess
|
|
<디파인제거>
|
|
- UNIT_DIFFUSE_CHANGE
|
|
- MESH_SORTED_BY_BONE
|
|
- ENABLE_LOOKAT_WZUINTDRAW
|
|
- ENABLE_CHARACTERSOUND
|
|
- DISABLE_INTERPOLATION_TIME
|
|
- DISABLE_BV_INFO
|
|
- APPLY_UNIT_LOD
|
|
- DISABLE_MESH_LOD
|
|
- ENABLE_MESHGROUP_LAYER
|
|
- ENABLE_DRAW_LEVEL
|
|
- ENABLE_PRESERVED_MORPH
|
|
- ENABLE_LIGHTMAP_BUFFER
|
|
- ENABLE_IK
|
|
- DISABLE_PHYSICS_WZUNITDRAW
|
|
- ENABLE_PHYSICS_CLOTH
|
|
- ANIMATION_OFF
|
|
- EVENT_OFF
|
|
- ENABLE_FIELD_TABLE
|
|
- ENABLE_MORPH_MESH
|
|
- ENABLE_LODBYFORCE
|
|
- ENABLE_INSTANCING
|
|
- ENABLE_CUSTOM_WZD
|
|
- ENABLE_INVISIBLE_LOD
|
|
- DISABLE_INV_AND_TRANSFORM_BUFFER
|
|
- ENABLE_BONE_KEYFRAME
|
|
- ENABLE_MEMORY_TRACKER
|
|
- ANIMATEPARAM_ROTATE_TO_MATRIX
|
|
|
|
* 3DFrameWork
|
|
<작업내용>
|
|
- 프로젝트 속성 변경 (일반/문자집합)
|
|
+ 유니코드 문자집합 사용 --> 멀티바이트 문자 집합 사용으로 변경
|
|
+ 관련 함수 수정
|
|
|
|
<디파인제거>
|
|
- ALLOW_CTRL_ENTER
|
|
|
|
* 3DRenderer
|
|
<디파인제거>
|
|
- USE_PROFILING
|
|
- _YJ_ADD_DOF_0010171
|
|
- _YJ_DOF_RANGE_001101
|
|
- USE_DEBUGWRITE
|
|
- DISABLE_PHYSICS
|
|
- ENABLE_RENDER_LIGHT
|
|
- ENABLE_VERTEX_TWEENING
|
|
- ENABLE_OCCLUSION_CULLING
|
|
- ENABLE_MULTISAMPLING
|
|
- ENABLE_PHYSICS_CLOTH
|
|
|
|
* 3DTerrain
|
|
<디파인제거>
|
|
- _YJ_SKYBOX_FILE_PATH_MODIFY
|
|
- MULTI_TILE_ATTRIB
|
|
- FOR_MAPTOOL_EXTRAINFO
|
|
- DISABLE_REAL_DISTANCE_CALCULATE
|
|
- DISABLE_MOVE_TO_VISIBLE_POINT
|
|
- ADD_MAP_ATTR
|
|
- PROFILE_OPT
|
|
- OPTIMIZE_WORLDTERRAINBLENDING
|
|
- OPTIMIZE_ARRAY
|
|
- OPTIMIZE_OCTNODEOBJECTS
|
|
- OPTIMIZE_AABBINEQUALITY
|
|
- OPTIMIZE_WORLDTERRAINTEXTURETOUSE
|
|
|
|
* Effect
|
|
<디파인제거>
|
|
- __ADD_RATIO_ACCELERATION
|
|
- __ADD_RANDOM_LIFE_TIME
|
|
- __ADD_BODY_SCALE
|
|
- __NA_0_20080917_BUGFIX_EFFECT_POS
|
|
|
|
* ControlsDLL
|
|
<작업내용>
|
|
- 프로젝트 속성 변경 (일반/문자집합)
|
|
+ 유니코드 문자집합 사용 --> 멀티바이트 문자 집합 사용으로 변경
|
|
+ 특정 파일 몇개를 제외하고 각 파일마다 전부 _MBCS를 정의하고 있었음
|
|
+ 프로젝트 속성은 멀티바이트 문자 집합 사용으로 변경하고
|
|
해당 파일에만 UNICODE정의
|
|
|
|
* MaxImporter
|
|
<작업내용>
|
|
- 전체 리팩토링
|
|
- UI 개선
|
|
|
|
//------------------------------------------------------------------------------
|
|
/**
|
|
엔진 배포 - 090302
|
|
*/
|
|
|