资源简介
光滑流体粒子动力学(SPH)方法简单实例代码,包括可运行程序。
其中,图形绘制部分采用 DirectX 引擎。
具体分析过程,见博客:http://blog.csdn.net/ironyoung/article/details/8068929

代码片段和文件信息
//--------------------------------------------------------------------------------------
// File: DXUT.cpp
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//--------------------------------------------------------------------------------------
#include “DXUT.h“
#define DXUT_MIN_WINDOW_SIZE_X 200
#define DXUT_MIN_WINDOW_SIZE_Y 200
#define DXUT_COUNTER_STAT_LENGTH 2048
#undef min // use __min instead inside this source file
#undef max // use __max instead inside this source file
#ifndef ARRAYSIZE
extern “C++“ // templates cannot be declared to have ‘C‘ linkage
template
char (*RtlpNumberOf( UNALIGNED T (&)[N] ))[N];
#define RTL_NUMBER_OF_V2(A) (sizeof(*RtlpNumberOf(A)))
#define ARRAYSIZE(A) RTL_NUMBER_OF_V2(A)
#endif
//--------------------------------------------------------------------------------------
// Thread safety
//--------------------------------------------------------------------------------------
CRITICAL_SECTION g_cs;
bool g_bThreadSafe = true;
//--------------------------------------------------------------------------------------
// Automatically enters & leaves the CS upon object creation/deletion
//--------------------------------------------------------------------------------------
class DXUTLock
{
public:
inline DXUTLock()
{
if( g_bThreadSafe ) EnterCriticalSection( &g_cs );
}
inline ~DXUTLock()
{
if( g_bThreadSafe ) LeaveCriticalSection( &g_cs );
}
};
//--------------------------------------------------------------------------------------
// Helper macros to build member functions that access member variables with thread safety
//--------------------------------------------------------------------------------------
#define SET_ACCESSOR( x y ) inline void Set##y( x t ) { DXUTLock l; m_state.m_##y = t; };
#define GET_ACCESSOR( x y ) inline x Get##y() { DXUTLock l; return m_state.m_##y; };
#define GET_SET_ACCESSOR( x y ) SET_ACCESSOR( x y ) GET_ACCESSOR( x y )
#define SETP_ACCESSOR( x y ) inline void Set##y( x* t ) { DXUTLock l; m_state.m_##y = *t; };
#define GETP_ACCESSOR( x y ) inline x* Get##y() { DXUTLock l; return &m_state.m_##y; };
#define GETP_SETP_ACCESSOR( x y ) SETP_ACCESSOR( x y ) GETP_ACCESSOR( x y )
//--------------------------------------------------------------------------------------
// Stores timer callback info
//--------------------------------------------------------------------------------------
struct DXUT_TIMER
{
LPDXUTCALLBACKTIMER pCallbackTimer;
void* pCallbackUserContext;
float fTimeoutInSecs;
float fCountdown;
bool bEnabled;
UINT nID;
};
//--------------------------------------------------------------------------------------
// D3D10 Counters
//--------------------------------------------------------------------------------------
struct D3D1
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-11-23 14:02 SPH\
目录 0 2011-04-07 20:39 SPH\DXUT\
目录 0 2011-04-07 20:46 SPH\DXUT\Core\
文件 335 2009-09-02 16:39 SPH\DXUT\Core\dpiaware.manifest
文件 290624 2009-09-02 16:39 SPH\DXUT\Core\DXUT.cpp
文件 19380 2009-09-02 16:39 SPH\DXUT\Core\DXUT.h
文件 1612 2009-09-02 16:39 SPH\DXUT\Core\DXUTCore_2005.sln
文件 8227 2011-03-02 17:59 SPH\DXUT\Core\DXUTCore_2005.vcproj
文件 1613 2009-09-02 16:39 SPH\DXUT\Core\DXUTCore_2008.sln
文件 9419 2009-09-02 16:39 SPH\DXUT\Core\DXUTCore_2008.vcproj
文件 165716 2009-09-02 16:39 SPH\DXUT\Core\DXUTenum.cpp
文件 18686 2009-09-02 16:39 SPH\DXUT\Core\DXUTenum.h
文件 75964 2009-09-02 16:39 SPH\DXUT\Core\DXUTmisc.cpp
文件 25819 2009-09-02 16:39 SPH\DXUT\Core\DXUTmisc.h
目录 0 2011-04-07 20:46 SPH\DXUT\Optional\
文件 25214 2009-09-02 16:39 SPH\DXUT\Optional\directx.ico
文件 57410 2009-09-02 16:39 SPH\DXUT\Optional\DXUTcamera.cpp
文件 18252 2009-09-02 16:39 SPH\DXUT\Optional\DXUTcamera.h
文件 227414 2009-09-02 16:39 SPH\DXUT\Optional\DXUTgui.cpp
文件 45635 2009-09-02 16:39 SPH\DXUT\Optional\DXUTgui.h
文件 37345 2009-09-02 16:39 SPH\DXUT\Optional\DXUTguiIME.cpp
文件 5886 2009-09-02 16:39 SPH\DXUT\Optional\DXUTguiIME.h
文件 9763 2009-09-02 16:39 SPH\DXUT\Optional\DXUTLockFreePipe.h
文件 1620 2009-09-02 16:39 SPH\DXUT\Optional\DXUTOptional_2005.sln
文件 9602 2011-03-02 17:59 SPH\DXUT\Optional\DXUTOptional_2005.vcproj
文件 1621 2009-09-02 16:39 SPH\DXUT\Optional\DXUTOptional_2008.sln
文件 10892 2009-09-02 16:39 SPH\DXUT\Optional\DXUTOptional_2008.vcproj
文件 845866 2009-09-02 16:39 SPH\DXUT\Optional\DXUTres.cpp
文件 869 2009-09-02 16:39 SPH\DXUT\Optional\DXUTres.h
文件 115930 2009-09-02 16:39 SPH\DXUT\Optional\DXUTsettingsdlg.cpp
文件 10664 2009-09-02 16:39 SPH\DXUT\Optional\DXUTsettingsdlg.h
............此处省略41个文件信息
- 上一篇:自动控制原理胡寿松第六版
- 下一篇:哈工大编译原理大作业
相关资源
- Apolipoprotein E4 Impairs in vivo Hippocampal
- VisualStudioUninstaller vs卸载工具
- 组态王驱动开发包3.0.0.7(中文)
- vSphere6.06.56.7通用版注册机
- 多窗口后台鼠标连点器
- 使用选择性重传协议实现UDP可靠通信
- VC 获得文件属性 获取文件的创建时
- 读者写者问题(读者优先,写者优先
- 用VC 编写的仿QQ聊天室程序源代码
- 外点法程序
- 外罚函数程序
- qt-电子点菜系统
- 推箱子及人工智能寻路C 源代码
- 自己写的航空订票系统c 版--数据结构
- 数据结构实验魔王语言
- MUSIC算法c 实现
- C 餐厅叫号系统(QT平)
- 国际象棋c 完整版
-
ob
jectARX给Auto CAD加工具条 - 画图程序MFC/VC/VC CRectTracker 串行化
- MFC网络编程实例
- c 课程设计 职工信息管理系统
- VC 游戏编程—附源代码
- IpHlpApi.h&IpHlpApi.lib
- 清华大学 c 郑莉 ppt课件
- c 程序判断离散数学中命题公式
- 多项式求和(数据结构C 版)
- vc 6.0开发的流程图编辑器
- VC 天空盒(skyBox)实现(附源代码)
- c MFC 画多边形
评论
共有 条评论