开源 企业版 高校版 私有云 模力方舟 AI 队友
代码拉取完成,页面将自动刷新
加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号? 立即登录
文件
master
分支 (2)
master
gh-pages
master
分支 (2)
master
gh-pages
克隆/下载
克隆/下载
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1 生成 RSA 密钥
2 获取 RSA 公钥内容,并配置到 SSH公钥
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com': # 私人令牌
master
分支 (2)
master
gh-pages
bgfx
/
src
/
debug_renderdoc.cpp
bgfx
/
src
/
debug_renderdoc.cpp
debug_renderdoc.cpp 3.18 KB
一键复制 编辑 原始数据 按行查看 历史
/*
* Copyright 2011-2018 Branimir Karadzic. All rights reserved.
* License: https://github.com/bkaradzic/bgfx#license-bsd-2-clause
*/
#include "bgfx_p.h"
#if BX_PLATFORM_WINDOWS || BX_PLATFORM_LINUX
# if BX_PLATFORM_WINDOWS
# include <psapi.h>
# endif // BX_PLATFORM_WINDOWS
# include <renderdoc/renderdoc_app.h>
namespace bgfx
{
bool findModule(const char* _name)
{
#if BX_PLATFORM_WINDOWS
HANDLE process = GetCurrentProcess();
DWORD size;
BOOL result = EnumProcessModules(process
, NULL
, 0
, &size
);
if (0 != result)
{
HMODULE* modules = (HMODULE*)alloca(size);
result = EnumProcessModules(process
, modules
, size
, &size
);
if (0 != result)
{
char moduleName[MAX_PATH];
for (uint32_t ii = 0, num = uint32_t(size/sizeof(HMODULE) ); ii < num; ++ii)
{
result = GetModuleBaseNameA(process
, modules[ii]
, moduleName
, BX_COUNTOF(moduleName)
);
if (0 != result
&& 0 == bx::strCmpI(_name, moduleName) )
{
return true;
}
}
}
}
#endif // BX_PLATFORM_WINDOWS
BX_UNUSED(_name);
return false;
}
pRENDERDOC_GetAPI RENDERDOC_GetAPI;
static RENDERDOC_API_1_1_2* s_renderDoc = NULL;
static void* s_renderDocDll = NULL;
void* loadRenderDoc()
{
if (NULL != s_renderDoc)
{
return s_renderDocDll;
}
// Skip loading RenderDoc when IntelGPA is present to avoid RenderDoc crash.
if (findModule(BX_ARCH_32BIT ? "shimloader32.dll" : "shimloader64.dll") )
{
return NULL;
}
void* renderDocDll = bx::dlopen(
#if BX_PLATFORM_WINDOWS
"renderdoc.dll"
#else
"./librenderdoc.so"
#endif // BX_PLATFORM_WINDOWS
);
if (NULL != renderDocDll)
{
RENDERDOC_GetAPI = (pRENDERDOC_GetAPI)bx::dlsym(renderDocDll, "RENDERDOC_GetAPI");
if (NULL != RENDERDOC_GetAPI
&& 1 == RENDERDOC_GetAPI(eRENDERDOC_API_Version_1_1_2, (void**)&s_renderDoc) )
{
s_renderDoc->SetCaptureFilePathTemplate(BGFX_CONFIG_RENDERDOC_LOG_FILEPATH);
s_renderDoc->SetFocusToggleKeys(NULL, 0);
RENDERDOC_InputButton captureKeys[] = BGFX_CONFIG_RENDERDOC_CAPTURE_KEYS;
s_renderDoc->SetCaptureKeys(captureKeys, BX_COUNTOF(captureKeys) );
s_renderDoc->SetCaptureOptionU32(eRENDERDOC_Option_AllowVSync, 1);
s_renderDoc->SetCaptureOptionU32(eRENDERDOC_Option_SaveAllInitials, 1);
s_renderDoc->MaskOverlayBits(eRENDERDOC_Overlay_None, eRENDERDOC_Overlay_None);
s_renderDocDll = renderDocDll;
}
else
{
bx::dlclose(renderDocDll);
renderDocDll = NULL;
}
}
return renderDocDll;
}
void unloadRenderDoc(void* _renderdocdll)
{
if (NULL != _renderdocdll)
{
// BK - Once RenderDoc is loaded there shouldn't be calls
// to Shutdown or unload RenderDoc DLL.
// https://github.com/bkaradzic/bgfx/issues/1192
//
// s_renderDoc->Shutdown();
// bx::dlclose(_renderdocdll);
}
}
void renderDocTriggerCapture()
{
if (NULL != s_renderDoc)
{
s_renderDoc->TriggerCapture();
}
}
} // namespace bgfx
#else
namespace bgfx
{
void* loadRenderDoc()
{
return NULL;
}
void unloadRenderDoc(void*)
{
}
void renderDocTriggerCapture()
{
}
} // namespace bgfx
#endif // BX_PLATFORM_WINDOWS || BX_PLATFORM_LINUX
Loading...
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
请选择举报类型
取消
发送
误判申诉

此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。

如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。

取消
提交

简介

Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
暂无标签
BSD-2-Clause
使用 BSD-2-Clause 开源许可协议
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
编辑仓库简介
简介内容
主页
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/devpark/bgfx.git
git@gitee.com:devpark/bgfx.git
devpark
bgfx
bgfx
master
点此查找更多帮助

搜索帮助

评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册

AltStyle によって変換されたページ (->オリジナル) /