• 大小: 52.34MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-02-19
  • 语言: 其他
  • 标签:

资源简介

快速实现模型LOD简化面生成的开发包,可以集成到任何编辑器中,这个版本已破解. The Simplygon SDK provides powerful methods to optimize 3d assets, which can easily be im- plemented and integrated into your 3d asset pipeline. At the very core, the optimization can be divided into two parts: Geometric optimization and 2d-material optimization. There are two dierent approaches that Simplygon uses to optimize the geometric data. Through reduction, geometric data is reduced using re-linking of triangles and vertex removal, and through remeshing, where the geometries are replaced by a lightweight proxy geometry that resembles the original. The material casting is a post-process of both the reduction and remeshin processing, where the caller application can use the mapping image data to cast material and texture data from the original onto the processed geometry. This can either be used to increase the details of the data, using normalmaps, or greatly reduce the amount of data through baking together a large number of texturemaps into a single one.

资源截图

代码片段和文件信息

#include 
#include  
#include 
#include 
#include 

#include “SimplygonSDKLoader.h“

static std::vector> AdditionalSearchPaths;

#ifdef _WIN32 
#include 
#include 
#include 
#include 



typedef int (CALLBACK* LPINITIALIZESIMPLYGONSDK)( LPCTSTR license_data  SimplygonSDK::ISimplygonSDK **pInterfacePtr );
typedef void (CALLBACK* LPDEINITIALIZESIMPLYGONSDK)();
typedef void (CALLBACK* LPGETINTERFACEVERSIONSIMPLYGONSDK)( char *deststring );
typedef int (CALLBACK* LPPOLLLOGSIMPLYGONSDK)( char *destbuffer  int max_length );

#define PUBLICBUILD

namespace SimplygonSDK
{

static LPINITIALIZESIMPLYGONSDK InitializeSimplygonSDKPtr = NULL; 
static LPDEINITIALIZESIMPLYGONSDK DeinitializeSimplygonSDKPtr = NULL;
static LPGETINTERFACEVERSIONSIMPLYGONSDK GetInterfaceVersionSimplygonSDKPtr = NULL;
static LPPOLLLOGSIMPLYGONSDK PollLogSimplygonSDKPtr = NULL;
static HINSTANCE hDLL = NULL; // Handle to SimplygonSDK DLL
static int LoadError = 0; // if the load failed this contains the error

// critical sections process-local mutexes
class rcriticalsection
{
private:
CRITICAL_SECTION cs;

public:
rcriticalsection() { ::InitializeCriticalSection(&cs); }
~rcriticalsection() { ::DeleteCriticalSection(&cs); }

void Enter() { EnterCriticalSection(&cs); }
void Leave() { LeaveCriticalSection(&cs); }
};

static int GetStringFromRegistry( LPCTSTR keyid  LPCTSTR valueid  LPTSTR dest )
{
HKEY reg_key;
if( RegOpenKey( HKEY_LOCAL_MACHINE  keyid  ®_key ) != ERROR_SUCCESS )
return SimplygonSDK::SG_ERROR_NOLICENSE; 

// read the value from the key
DWORD path_size = MAX_PATH;
if( RegQueryValueEx( reg_key  valueid  NULL  NULL  (unsigned char *)dest  &path_size ) != ERROR_SUCCESS )
return SimplygonSDK::SG_ERROR_NOLICENSE;
dest[path_size] = 0;

// close the key
RegCloseKey( reg_key );
return SimplygonSDK::SG_ERROR_NOERROR;
}

inline LPTSTR ConstCharPtrToLPTSTR(const char * stringToConvert) 
{
size_t newsize = strlen(stringToConvert)+1;
LPTSTR returnString = (LPTSTR)malloc(newsize * sizeof(TCHAR));
#ifndef _UNICODE
memcpy( returnString  stringToConvert  newsize );
#else
size_t convertedChars = 0;
mbstowcs_s(&convertedChars returnString newsize stringToConvert _TRUNCATE);
#endif // _UNICODE
return returnString;
}

static bool FileExists( LPCTSTR path )
{
DWORD v = ::GetFileAttributes( path );
if( v == INVALID_FILE_ATTRIBUTES )
{
return false;
}
return true;
}


static std::basic_string GetInstallationPath()
{
TCHAR InstallationPath[MAX_PATH];

// get the installation path string from the registry
if( GetStringFromRegistry( _T(“Software\\DonyaLabs\\SimplygonSDK“)  _T(“InstallationPath“)  InstallationPath ) != 0 )
{
return std::basic_string

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      10461  2013-02-28 01:07  SimplygonSDKV4x86\4squares.obj

     文件       2715  2013-02-28 01:07  SimplygonSDKV4x86\add.jpg

     文件       2768  2013-02-28 01:07  SimplygonSDKV4x86\base.jpg

     文件       1090  2013-02-28 01:07  SimplygonSDKV4x86\cube.obj

     文件         25  2013-03-10 17:23  SimplygonSDKV4x86\License.dat

     文件     534016  2013-02-27 18:05  SimplygonSDKV4x86\LicenseApplication.exe

     文件       3945  2013-02-28 01:07  SimplygonSDKV4x86\multi.obj

     文件       2731  2013-02-28 01:07  SimplygonSDKV4x86\multiply.jpg

     文件      56105  2013-02-28 01:07  SimplygonSDKV4x86\object.obj

     文件    4397056  2013-03-07 07:14  SimplygonSDKV4x86\Org\SimplygonSDKRuntimeReleaseWin32.dll

     文件       8605  2013-03-10 17:22  SimplygonSDKV4x86\output25.obj

     文件      33663  2013-03-10 17:22  SimplygonSDKV4x86\output50.obj

     文件       5054  2013-02-27 18:07  SimplygonSDKV4x86\ReleaseNotes.txt

     文件    1507105  2013-03-07 07:01  SimplygonSDKV4x86\SimplygonAPIDocumentation.chm

     文件      98507  2013-02-27 18:07  SimplygonSDKV4x86\SimplygonAPIExamplesOverview.pdf

     文件    2748730  2013-02-27 18:07  SimplygonSDKV4x86\SimplygonAPIUsersGuide.pdf

     文件    9562624  2013-03-07 07:15  SimplygonSDKV4x86\SimplygonGUI.exe

     文件   11037721  2013-03-07 07:01  SimplygonSDKV4x86\SimplygonSDK\ExamplesSource.exe

     文件     278528  2013-03-07 07:15  SimplygonSDKV4x86\SimplygonSDK\MaxPluginsx86\SimplygonMax2009ReleaseWin32.dlu

     文件     279040  2013-03-07 07:13  SimplygonSDKV4x86\SimplygonSDK\MaxPluginsx86\SimplygonMax2010ReleaseWin32.dlu

     文件     279040  2013-03-07 07:13  SimplygonSDKV4x86\SimplygonSDK\MaxPluginsx86\SimplygonMax2011ReleaseWin32.dlu

     文件     279040  2013-03-07 07:13  SimplygonSDKV4x86\SimplygonSDK\MaxPluginsx86\SimplygonMax2012ReleaseWin32.dlu

     文件     347136  2013-03-07 07:15  SimplygonSDKV4x86\SimplygonSDK\MaxPluginsx86\SimplygonMax2013ReleaseWin32.dlu

     文件     355328  2013-03-07 07:15  SimplygonSDKV4x86\SimplygonSDK\MayaPluginsx86\SimplygonMaya2009ReleaseWin32.mll

     文件     355328  2013-03-07 07:13  SimplygonSDKV4x86\SimplygonSDK\MayaPluginsx86\SimplygonMaya2010ReleaseWin32.mll

     文件     355328  2013-03-07 07:13  SimplygonSDKV4x86\SimplygonSDK\MayaPluginsx86\SimplygonMaya2011ReleaseWin32.mll

     文件     354816  2013-03-07 07:13  SimplygonSDKV4x86\SimplygonSDK\MayaPluginsx86\SimplygonMaya2012ReleaseWin32.mll

     文件     354816  2013-03-07 07:16  SimplygonSDKV4x86\SimplygonSDK\MayaPluginsx86\SimplygonMaya2013ExtensionReleaseWin32.mll

     文件     354816  2013-03-07 07:16  SimplygonSDKV4x86\SimplygonSDK\MayaPluginsx86\SimplygonMaya2013ReleaseWin32.mll

     文件      10461  2013-02-28 01:07  SimplygonSDKV4x86\SimplygonSDK\SourceCode\Assets\4squares.obj

............此处省略305个文件信息

评论

共有 条评论

相关资源