Initial commit: ROW Client source code

Game client codebase including:
- CharacterActionControl: Character and creature management
- GlobalScript: Network, items, skills, quests, utilities
- RYLClient: Main client application with GUI and event handlers
- Engine: 3D rendering engine (RYLGL)
- MemoryManager: Custom memory allocation
- Library: Third-party dependencies (DirectX, boost, etc.)
- Tools: Development utilities

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-29 16:24:34 +09:00
commit e067522598
5135 changed files with 1745744 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,187 @@
//-----------------------------------------------------------------------------
// File: Fog.h
//
// Desc: Header file MFCFog sample app
//
//
// Copyright (c) 1997-2001 Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
#ifndef FOG_H
#define FOG_H
#if _MSC_VER >= 1000
#pragma once
#endif
#ifndef __AFXWIN_H__
#error include 'stdafx.h' before including this file
#endif
//-----------------------------------------------------------------------------
// Name: class CAppDoc
// Desc: Overridden CDocument class needed for the CFormView
//-----------------------------------------------------------------------------
class CAppDoc : public CDocument
{
protected:
DECLARE_DYNCREATE(CAppDoc)
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CAppDoc)
public:
//}}AFX_VIRTUAL
// Implementation
//{{AFX_MSG(CAppDoc)
// NOTE - the ClassWizard will add and remove member functions here.
// DO NOT EDIT what you see in these blocks of generated code !
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//-----------------------------------------------------------------------------
// Name: class CAppFrameWnd
// Desc: CFrameWnd-based class needed to override the CFormView's window style
//-----------------------------------------------------------------------------
class CAppFrameWnd : public CFrameWnd
{
protected:
DECLARE_DYNCREATE(CAppFrameWnd)
public:
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CAppFrameWnd)
public:
virtual BOOL PreCreateWindow( CREATESTRUCT& cs );
//}}AFX_VIRTUAL
protected:
//{{AFX_MSG(CAppFrameWnd)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//-----------------------------------------------------------------------------
// Name: class CApp
// Desc: Main MFCapplication class derived from CWinApp.
//-----------------------------------------------------------------------------
class CApp : public CWinApp
{
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CApp)
public:
virtual BOOL InitInstance();
virtual BOOL OnIdle( LONG );
//}}AFX_VIRTUAL
// Implementation
//{{AFX_MSG(CApp)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//-----------------------------------------------------------------------------
// Name: class CAppForm
// Desc: CFormView-based class which allows the UI to be created with a form
// (dialog) resource. This class manages all the controls on the form.
//-----------------------------------------------------------------------------
class CAppForm : public CFormView, public CD3DApplication
{
private:
BOOL m_bHiResTerrain;
BOOL m_bHiResTerrainOld;
DWORD m_dwFogColor;
DWORD m_dwFogMode;
BOOL m_bCanDoTableFog;
BOOL m_bCanDoVertexFog;
BOOL m_bCanDoWFog;
BOOL m_bDeviceUsesWFog;
BOOL m_bRangeBasedFog;
BOOL m_bUsingTableFog;
FLOAT m_fFogStartSlider;
FLOAT m_fFogEndSlider;
FLOAT m_fFogStartValue;
FLOAT m_fFogEndValue;
FLOAT m_fFogDensity;
HWND m_hwndRenderWindow;
HWND m_hwndRenderFullScreen;
LPDIRECT3DTEXTURE8 m_pFloorTexture;
LPDIRECT3DVERTEXBUFFER8 m_pTerrainVB;
DWORD m_dwNumTerrainVertices;
LPDIRECT3DVERTEXBUFFER8 m_pColumnVB;
DWORD m_dwNumColumnVertices;
HRESULT ConfirmDevice( D3DCAPS8*,DWORD,D3DFORMAT );
HRESULT OneTimeSceneInit();
HRESULT InitDeviceObjects();
HRESULT RestoreDeviceObjects();
HRESULT FrameMove();
HRESULT Render();
HRESULT InvalidateDeviceObjects();
HRESULT DeleteDeviceObjects();
HRESULT FinalCleanup();
virtual HRESULT AdjustWindowForChange();
VOID UpdateUIForDeviceCapabilites();
VOID SetFogParameters();
HRESULT GenerateTerrainDisk( LPDIRECT3DDEVICE8 pd3dDevice, DWORD dwNumSegments,
FLOAT fScale );
HRESULT GenerateColumn( LPDIRECT3DDEVICE8 pd3dDevice, DWORD dwNumSegments,
FLOAT fRadius, FLOAT fHeight );
protected:
DECLARE_DYNCREATE(CAppForm)
CAppForm();
virtual ~CAppForm();
public:
BOOL IsReady() { return m_bReady; }
TCHAR* PstrFrameStats() { return m_strFrameStats; }
VOID RenderScene() { Render3DEnvironment(); }
HRESULT CheckForLostFullscreen();
//{{AFX_DATA(CAppForm)
enum { IDD = IDD_FORMVIEW };
//}}AFX_DATA
//{{AFX_VIRTUAL(CAppForm)
virtual void OnInitialUpdate();
//}}AFX_VIRTUAL
//{{AFX_MSG(CAppForm)
afx_msg void OnToggleFullScreen();
afx_msg void OnChangeDevice();
afx_msg void OnHScroll( UINT, UINT, CScrollBar* );
afx_msg void OnFogColor();
afx_msg void OnRangeBasedFog();
afx_msg void OnVertexFog();
afx_msg void OnTableFog();
afx_msg void OnFogMode();
afx_msg void OnTerrainResolution();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif

View File

@@ -0,0 +1,225 @@
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDR_MAINFRAME ICON DISCARDABLE "DirectX.ico"
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE DISCARDABLE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE DISCARDABLE
BEGIN
"#include ""afxres.h""\r\n"
"\0"
END
3 TEXTINCLUDE DISCARDABLE
BEGIN
"\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Accelerator
//
IDR_MAIN_ACCEL ACCELERATORS DISCARDABLE
BEGIN
VK_ESCAPE, IDM_EXIT, VIRTKEY, NOINVERT
VK_RETURN, IDM_PAUSE, VIRTKEY, NOINVERT
VK_RETURN, IDM_ALTENTER, VIRTKEY, ALT, NOINVERT
VK_SPACE, IDM_SINGLESTEP, VIRTKEY, NOINVERT
END
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_FORMVIEW DIALOGEX 0, 0, 385, 196
STYLE WS_CHILD
FONT 8, "MS Shell Dlg"
BEGIN
CONTROL "&Vertex fog",IDC_VERTEXFOG,"Button",BS_AUTORADIOBUTTON |
WS_GROUP,205,70,48,10
CONTROL "&Pixel (table) fog",IDC_TABLEFOG,"Button",
BS_AUTORADIOBUTTON,205,80,64,10
CONTROL "&Linear",IDC_LINEARFOGMODE,"Button",BS_AUTORADIOBUTTON |
WS_GROUP,301,70,35,10
CONTROL "E&xp",IDC_EXPFOGMODE,"Button",BS_AUTORADIOBUTTON,301,80,
28,10
CONTROL "Exp&2",IDC_EXP2FOGMODE,"Button",BS_AUTORADIOBUTTON,301,
90,32,10
CONTROL "&Range-based",IDC_RANGEBASEDFOG,"Button",
BS_AUTOCHECKBOX | WS_TABSTOP,210,123,59,10
PUSHBUTTON "Fog &color...",IDC_FOGCOLOR,325,120,55,15
CONTROL "Slider1",IDC_FOGSTART_SLIDER,"msctls_trackbar32",
TBS_AUTOTICKS | TBS_BOTH | TBS_NOTICKS | WS_TABSTOP,275,
153,65,10
CONTROL "Slider1",IDC_FOGEND_SLIDER,"msctls_trackbar32",
TBS_AUTOTICKS | TBS_BOTH | TBS_NOTICKS | WS_TABSTOP,275,
168,65,10
CONTROL "Slider1",IDC_FOGDENSITY_SLIDER,"msctls_trackbar32",
TBS_AUTOTICKS | TBS_BOTH | TBS_NOTICKS | WS_TABSTOP,275,
183,65,10
PUSHBUTTON "Change &Device...",IDM_CHANGEDEVICE,15,175,76,15
PUSHBUTTON "View Full&screen",IDC_VIEWFULLSCREEN,109,175,76,15
CONTROL "",IDC_RENDERVIEW,"Static",SS_BLACKFRAME,5,5,190,165,
WS_EX_DLGMODALFRAME | WS_EX_CLIENTEDGE
LTEXT "End:",IDC_FOGEND_TEXT,205,166,16,15,SS_CENTERIMAGE
LTEXT "Start:",IDC_FOGSTART_TEXT,205,150,18,15,SS_CENTERIMAGE
CTEXT "Static",IDC_FPS_TEXT,245,10,132,10,SS_CENTERIMAGE,
WS_EX_STATICEDGE
LTEXT "Frame rate",IDC_STATIC,205,10,34,8
GROUPBOX "Fog type",IDC_STATIC,200,60,90,50,BS_CENTER
LTEXT "Density:",IDC_FOGDENSITY_TEXT,205,180,26,15,
SS_CENTERIMAGE
CTEXT "near (1.0)",IDC_FOGSTARTMIN_TEXT,235,150,35,15,
SS_CENTERIMAGE
CTEXT "near (1.0)",IDC_FOGENDMIN_TEXT,235,165,35,15,
SS_CENTERIMAGE
CTEXT "low (0.0)",IDC_FOGDENSITYMIN_TEXT,235,180,35,15,
SS_CENTERIMAGE
GROUPBOX "Fog mode",IDC_STATIC,295,60,90,50,BS_CENTER
GROUPBOX "Fog parameters",IDC_STATIC,200,140,185,56,BS_CENTER
GROUPBOX "Statistics",IDC_STATIC,200,0,185,25,BS_CENTER
CTEXT "far (150.0)",IDC_FOGSTARTMAX_TEXT,340,150,40,15,
SS_CENTERIMAGE
CTEXT "far (150.0)",IDC_FOGENDMAX_TEXT,340,166,40,15,
SS_CENTERIMAGE
CTEXT "high (1.0)",IDC_FOGDENSITYMAX_TEXT,340,180,40,15,
SS_CENTERIMAGE
GROUPBOX "Fog options",IDC_STATIC,200,110,185,30,BS_CENTER
GROUPBOX "Application options",IDC_STATIC,200,25,185,35,BS_CENTER
CONTROL "Low-resolution terrain",IDC_LORESTERRAIN,"Button",
BS_AUTORADIOBUTTON,205,35,83,10
CONTROL "High-resolution terrain",IDC_HIRESTERRAIN,"Button",
BS_AUTORADIOBUTTON,205,45,84,10
LTEXT "Device using w-fog",IDC_USINGWFOG,205,95,80,8
END
IDD_SELECTDEVICE DIALOG DISCARDABLE 0, 0, 267, 138
STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Select Device"
FONT 8, "MS Shell Dlg"
BEGIN
GROUPBOX "Rendering device",IDC_STATIC,5,5,200,45
LTEXT "&Adapter:",IDC_STATIC,22,17,65,10,SS_CENTERIMAGE
COMBOBOX IDC_ADAPTER_COMBO,90,15,105,100,CBS_DROPDOWNLIST |
WS_VSCROLL | WS_TABSTOP
LTEXT "&Device:",IDC_STATIC,22,32,65,10,SS_CENTERIMAGE
COMBOBOX IDC_DEVICE_COMBO,90,30,105,100,CBS_DROPDOWNLIST |
WS_VSCROLL | WS_TABSTOP
GROUPBOX "Rendering mode",IDC_STATIC,5,52,200,45
CONTROL "Use desktop &window",IDC_WINDOW,"Button",
BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,10,62,85,15
CONTROL "&Fullscreen mode:",IDC_FULLSCREEN,"Button",
BS_AUTORADIOBUTTON,10,77,75,15
COMBOBOX IDC_FULLSCREENMODES_COMBO,90,77,105,204,CBS_DROPDOWNLIST |
WS_VSCROLL | WS_GROUP | WS_TABSTOP
GROUPBOX "Multisample",IDC_STATIC,5,101,200,28
LTEXT "&Multisample Type:",IDC_STATIC,22,113,62,10,
SS_CENTERIMAGE
COMBOBOX IDC_MULTISAMPLE_COMBO,90,111,105,100,CBS_DROPDOWNLIST |
WS_VSCROLL | WS_TABSTOP
DEFPUSHBUTTON "OK",IDOK,210,10,50,14
PUSHBUTTON "Cancel",IDCANCEL,210,30,50,14
END
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO DISCARDABLE
BEGIN
IDD_FORMVIEW, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 377
TOPMARGIN, 7
BOTTOMMARGIN, 191
END
IDD_SELECTDEVICE, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 259
TOPMARGIN, 7
BOTTOMMARGIN, 143
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_MAINFRAME MENU DISCARDABLE
BEGIN
POPUP "&File"
BEGIN
MENUITEM "Change &device...", IDM_CHANGEDEVICE
MENUITEM SEPARATOR
MENUITEM "E&xit", ID_APP_EXIT
END
END
#endif // English (U.S.) resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED

View File

@@ -0,0 +1,163 @@
# Microsoft Developer Studio Project File - Name="MFCFog" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Application" 0x0101
CFG=MFCFog - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "mfcfog.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "mfcfog.mak" CFG="MFCFog - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "MFCFog - Win32 Release" (based on "Win32 (x86) Application")
!MESSAGE "MFCFog - Win32 Debug" (based on "Win32 (x86) Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "MFCFog - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 2
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\common\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_AFXDLL" /YX"stdafx.h" /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
# ADD LINK32 d3dx8.lib d3d8.lib d3dxof.lib dxguid.lib winmm.lib /nologo /subsystem:windows /machine:I386 /stack:0x200000,0x200000
!ELSEIF "$(CFG)" == "MFCFog - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 2
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\..\common\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_AFXDLL" /YX"stdafx.h" /FD /c
# SUBTRACT CPP /Fr
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
# ADD LINK32 d3dx8dt.lib d3d8.lib d3dxof.lib dxguid.lib winmm.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept /stack:0x200000,0x200000
!ENDIF
# Begin Target
# Name "MFCFog - Win32 Release"
# Name "MFCFog - Win32 Debug"
# Begin Group "Common Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\common\src\d3dapp.cpp
# End Source File
# Begin Source File
SOURCE=..\..\common\include\d3dapp.h
# End Source File
# Begin Source File
SOURCE=..\..\common\src\d3dfile.cpp
# End Source File
# Begin Source File
SOURCE=..\..\common\include\d3dfile.h
# End Source File
# Begin Source File
SOURCE=..\..\common\src\d3dutil.cpp
# End Source File
# Begin Source File
SOURCE=..\..\common\include\d3dutil.h
# End Source File
# Begin Source File
SOURCE=..\..\common\src\dxutil.cpp
# End Source File
# Begin Source File
SOURCE=..\..\common\include\dxutil.h
# End Source File
# End Group
# Begin Group "Resource"
# PROP Default_Filter ""
# Begin Source File
SOURCE=.\directx.ico
# End Source File
# Begin Source File
SOURCE=.\fog.rc
# End Source File
# Begin Source File
SOURCE=.\resource.h
# End Source File
# End Group
# Begin Source File
SOURCE=.\fog.cpp
# End Source File
# Begin Source File
SOURCE=.\fog.h
# End Source File
# Begin Source File
SOURCE=.\readme.txt
# End Source File
# Begin Source File
SOURCE=.\stdafx.cpp
# End Source File
# Begin Source File
SOURCE=.\stdafx.h
# End Source File
# End Target
# End Project

View File

@@ -0,0 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "MFCFog"=.\mfcfog.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -0,0 +1,250 @@
# Microsoft Developer Studio Generated NMAKE File, Based on mfcfog.dsp
!IF "$(CFG)" == ""
CFG=MFCFog - Win32 Debug
!MESSAGE No configuration specified. Defaulting to MFCFog - Win32 Debug.
!ENDIF
!IF "$(CFG)" != "MFCFog - Win32 Release" && "$(CFG)" != "MFCFog - Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "mfcfog.mak" CFG="MFCFog - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "MFCFog - Win32 Release" (based on "Win32 (x86) Application")
!MESSAGE "MFCFog - Win32 Debug" (based on "Win32 (x86) Application")
!MESSAGE
!ERROR An invalid configuration is specified.
!ENDIF
!IF "$(OS)" == "Windows_NT"
NULL=
!ELSE
NULL=nul
!ENDIF
!IF "$(CFG)" == "MFCFog - Win32 Release"
OUTDIR=.\Release
INTDIR=.\Release
# Begin Custom Macros
OutDir=.\Release
# End Custom Macros
ALL : "$(OUTDIR)\mfcfog.exe"
CLEAN :
-@erase "$(INTDIR)\d3dapp.obj"
-@erase "$(INTDIR)\d3dfile.obj"
-@erase "$(INTDIR)\d3dutil.obj"
-@erase "$(INTDIR)\dxutil.obj"
-@erase "$(INTDIR)\fog.obj"
-@erase "$(INTDIR)\fog.res"
-@erase "$(INTDIR)\stdafx.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(OUTDIR)\mfcfog.exe"
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MD /W3 /GX /O2 /I "..\..\common\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_AFXDLL" /Fp"$(INTDIR)\mfcfog.pch" /YX"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
MTL=midl.exe
MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /win32
RSC=rc.exe
RSC_PROJ=/l 0x409 /fo"$(INTDIR)\fog.res" /d "NDEBUG" /d "_AFXDLL"
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\mfcfog.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=d3dx8.lib d3d8.lib d3dxof.lib dxguid.lib winmm.lib /nologo /subsystem:windows /incremental:no /pdb:"$(OUTDIR)\mfcfog.pdb" /machine:I386 /out:"$(OUTDIR)\mfcfog.exe" /stack:0x200000,0x200000
LINK32_OBJS= \
"$(INTDIR)\d3dapp.obj" \
"$(INTDIR)\d3dfile.obj" \
"$(INTDIR)\d3dutil.obj" \
"$(INTDIR)\dxutil.obj" \
"$(INTDIR)\fog.obj" \
"$(INTDIR)\stdafx.obj" \
"$(INTDIR)\fog.res"
"$(OUTDIR)\mfcfog.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
!ELSEIF "$(CFG)" == "MFCFog - Win32 Debug"
OUTDIR=.\Debug
INTDIR=.\Debug
# Begin Custom Macros
OutDir=.\Debug
# End Custom Macros
ALL : "$(OUTDIR)\mfcfog.exe"
CLEAN :
-@erase "$(INTDIR)\d3dapp.obj"
-@erase "$(INTDIR)\d3dfile.obj"
-@erase "$(INTDIR)\d3dutil.obj"
-@erase "$(INTDIR)\dxutil.obj"
-@erase "$(INTDIR)\fog.obj"
-@erase "$(INTDIR)\fog.res"
-@erase "$(INTDIR)\stdafx.obj"
-@erase "$(INTDIR)\vc60.idb"
-@erase "$(INTDIR)\vc60.pdb"
-@erase "$(OUTDIR)\mfcfog.exe"
-@erase "$(OUTDIR)\mfcfog.ilk"
-@erase "$(OUTDIR)\mfcfog.pdb"
"$(OUTDIR)" :
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
CPP=cl.exe
CPP_PROJ=/nologo /MDd /W3 /Gm /GX /Zi /Od /I "..\..\common\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_AFXDLL" /Fp"$(INTDIR)\mfcfog.pch" /YX"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
.c{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.obj::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.c{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cpp{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
.cxx{$(INTDIR)}.sbr::
$(CPP) @<<
$(CPP_PROJ) $<
<<
MTL=midl.exe
MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /win32
RSC=rc.exe
RSC_PROJ=/l 0x409 /fo"$(INTDIR)\fog.res" /d "_DEBUG" /d "_AFXDLL"
BSC32=bscmake.exe
BSC32_FLAGS=/nologo /o"$(OUTDIR)\mfcfog.bsc"
BSC32_SBRS= \
LINK32=link.exe
LINK32_FLAGS=d3dx8dt.lib d3d8.lib d3dxof.lib dxguid.lib winmm.lib /nologo /subsystem:windows /incremental:yes /pdb:"$(OUTDIR)\mfcfog.pdb" /debug /machine:I386 /out:"$(OUTDIR)\mfcfog.exe" /pdbtype:sept /stack:0x200000,0x200000
LINK32_OBJS= \
"$(INTDIR)\d3dapp.obj" \
"$(INTDIR)\d3dfile.obj" \
"$(INTDIR)\d3dutil.obj" \
"$(INTDIR)\dxutil.obj" \
"$(INTDIR)\fog.obj" \
"$(INTDIR)\stdafx.obj" \
"$(INTDIR)\fog.res"
"$(OUTDIR)\mfcfog.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
$(LINK32) @<<
$(LINK32_FLAGS) $(LINK32_OBJS)
<<
!ENDIF
!IF "$(NO_EXTERNAL_DEPS)" != "1"
!IF EXISTS("mfcfog.dep")
!INCLUDE "mfcfog.dep"
!ELSE
!MESSAGE Warning: cannot find "mfcfog.dep"
!ENDIF
!ENDIF
!IF "$(CFG)" == "MFCFog - Win32 Release" || "$(CFG)" == "MFCFog - Win32 Debug"
SOURCE=..\..\common\src\d3dapp.cpp
"$(INTDIR)\d3dapp.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=..\..\common\src\d3dfile.cpp
"$(INTDIR)\d3dfile.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=..\..\common\src\d3dutil.cpp
"$(INTDIR)\d3dutil.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=..\..\common\src\dxutil.cpp
"$(INTDIR)\dxutil.obj" : $(SOURCE) "$(INTDIR)"
$(CPP) $(CPP_PROJ) $(SOURCE)
SOURCE=.\fog.rc
"$(INTDIR)\fog.res" : $(SOURCE) "$(INTDIR)"
$(RSC) $(RSC_PROJ) $(SOURCE)
SOURCE=.\fog.cpp
"$(INTDIR)\fog.obj" : $(SOURCE) "$(INTDIR)"
SOURCE=.\stdafx.cpp
"$(INTDIR)\stdafx.obj" : $(SOURCE) "$(INTDIR)"
!ENDIF

View File

@@ -0,0 +1,41 @@
//-----------------------------------------------------------------------------
// Name: MFCFog Direct3D Sample
//
// Copyright (c) 1998-2001 Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
Description
===========
The MFCFog sample illustrates how to use Direct3D with MFC, using a
CFormView. Various controls are used to control fog parameters for the 3D
scene.
Path
====
Source: DXSDK\Samples\Multimedia\D3D\MFCFog
Executable: DXSDK\Samples\Multimedia\D3D\Bin
User's Guide
============
All user interaction for this sample is implemented through the visible MFC
controls (sliders, radio buttons, etc.). The user is encouraged to play with
controls and observe the various effects they have on the rendered 3D scene.
Programming Notes
=================
All the MFC code is contained with the CFormView class' derived member
functions. The code for the MFC and D3D initialization code can be found in
the d3dapp.cpp source file. This file can be easily ported to work with
another app, by simply stripping out the fog-related code.
The Direct3D fog code is all contained in fog.cpp. Here you'll find functions
to initialize, animate, render, and cleanup the scene.
This sample makes use of common DirectX code (consisting of helper functions,
etc.) that is shared with other samples on the DirectX SDK. All common
headers and source code can be found in the following directory:
DXSDK\Samples\Multimedia\Common

View File

@@ -0,0 +1,62 @@
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by fog.rc
//
#define IDI_MAIN_ICON 101
#define IDR_MAINFRAME 101
#define IDD_FORMVIEW 102
#define IDR_MAIN_ACCEL 113
#define IDD_SELECTDEVICE 144
#define IDC_DEVICE_COMBO 1000
#define IDC_MODE_COMBO 1001
#define IDC_ADAPTER_COMBO 1002
#define IDC_FULLSCREENMODES_COMBO 1003
#define IDC_MULTISAMPLE_COMBO 1005
#define IDC_WINDOWED_CHECKBOX 1012
#define IDC_FULLSCREEN_TEXT 1014
#define IDC_WINDOW 1016
#define IDC_FULLSCREEN 1018
#define IDC_RENDERVIEW 1050
#define IDC_VIEWFULLSCREEN 1059
#define IDC_FOGCOLOR 1064
#define IDC_FOGSTART_SLIDER 1065
#define IDC_FOGEND_SLIDER 1066
#define IDC_VERTEXFOG 1067
#define IDC_TABLEFOG 1068
#define IDC_LINEARFOGMODE 1070
#define IDC_EXPFOGMODE 1071
#define IDC_EXP2FOGMODE 1072
#define IDC_FOGDENSITY_SLIDER 1073
#define IDC_RANGEBASEDFOG 1074
#define IDC_FOGSTART_TEXT 1075
#define IDC_FOGEND_TEXT 1076
#define IDC_FOGDENSITY_TEXT 1077
#define IDC_FPS_TEXT 1078
#define IDC_FOGSTARTMIN_TEXT 1081
#define IDC_FOGENDMIN_TEXT 1085
#define IDC_FOGDENSITYMIN_TEXT 1086
#define IDC_FOGSTARTMAX_TEXT 1087
#define IDC_FOGENDMAX_TEXT 1088
#define IDC_FOGDENSITYMAX_TEXT 1089
#define IDC_LORESTERRAIN 1090
#define IDC_HIRESTERRAIN 1091
#define IDC_WFOG 1092
#define IDC_USINGWFOG 1093
#define IDM_EXIT 40001
#define IDM_CHANGEDEVICE 40010
#define IDM_ALTENTER 40010
#define IDM_TOGGLEFULLSCREEN 40011
#define IDM_PAUSE 40018
#define IDM_SINGLESTEP 40019
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_3D_CONTROLS 1
#define _APS_NEXT_RESOURCE_VALUE 152
#define _APS_NEXT_COMMAND_VALUE 40020
#define _APS_NEXT_CONTROL_VALUE 1094
#define _APS_NEXT_SYMED_VALUE 102
#endif
#endif

View File

@@ -0,0 +1,6 @@
// stdafx.cpp : source file that includes just the standard includes
// Gear.pch will be the pre-compiled header
// stdafx.obj will contain the pre-compiled type information
#include "stdafx.h"

View File

@@ -0,0 +1,25 @@
// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//
#if !defined(AFX_STDAFX_H__F8D95047_DC20_11D0_9A2C_00C04FD7D17B__INCLUDED_)
#define AFX_STDAFX_H__F8D95047_DC20_11D0_9A2C_00C04FD7D17B__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // MFC support for Windows Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT
//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_STDAFX_H__F8D95047_DC20_11D0_9A2C_00C04FD7D17B__INCLUDED_)