Project Icon

polymer

开源空间交互与实时渲染研究框架

Polymer是一个开源的空间交互和实时渲染研究框架,基于C++14和桌面级OpenGL,主要面向Windows平台。框架特性包括物理基础正向渲染、实体组件架构、OpenGL封装和热重载资产系统。适用于沉浸式媒体、图形学研究和工具开发。Polymer由基础库、引擎库和模型IO库组成,为开发者提供灵活的开发环境。框架集成了OpenVR,支持AR/VR原型开发,并提供桌面场景编辑器和JSON场景序列化功能。

Polymer

许可证为BSD 3条款

平台构建状态
MSVC 2017 x64构建状态

Polymer是一个用于空间交互和实时渲染的研究框架,目前针对C++14和Windows上的桌面级OpenGL。它旨在探索AR/VR原型设计工具作为引擎核心概念。它受到了诸如NVIDIA的Falcor、Google的Lullaby和Microsoft的Mixed Reality Toolkit等项目的启发。虽然Polymer的主要焦点是沉浸式媒体,但该引擎还包含了对图形研究和通用工具及实用程序开发有用的功能。

特性

  • 基于物理的、gamma校正的前向渲染器,支持MSAA
  • 数据驱动的实体-组件架构,带有自定义RTTI
  • 现代OpenGL的轻量级、面向对象的封装
  • 支持热重载的资产,包括GLSL着色器
  • 常见几何和纹理格式的资产导入
  • 带有json场景序列化的桌面场景编辑器应用
  • OpenVR集成

架构

Polymer设计为静态库集合。lib-polymer是一个基础库,包含游戏开发者熟悉的常见数据结构和算法。lib-engine依赖于lib-polymer,引入了实体-组件系统和基于物理的渲染管线。lib-engine还提供了运行时资产管理解决方案。最后,lib-model-io包含导入、导出和优化常见几何格式(目前支持obj、ply和fbx)的代码。

未来,渲染代码将移至lib-graphics,并具有能够针对多种图形后端(如Metal和Vulkan)的抽象渲染硬件接口。

构建

Polymer需要最新版本的Windows 10和支持OpenGL 4.5上下文的图形驱动程序。该仓库维护了Visual Studio 2017的项目文件。大多数依赖项以源代码形式包含,不使用子模块。

先决条件

构建项目需要Windows SDK。您可以在此处下载。

使用FBX 2017 SDK受环境变量控制(SYSTEM_HAS_FBX_SDK应设置为评估为相同的标记,SYSTEM_HAS_FBX_SDK);提取的FBX SDK本身必须位于polymer\lib-model-io\third-party\fbxsdk。您可以从此处下载FBX SDK。

构建项目

在Microsoft Visual Studio 2017中打开解决方案文件并构建它。

注意: 如果构建失败并显示消息_未找到Windows SDK版本10.0.16299.0_,且您已正确安装Windows SDK,您可能需要在每个项目属性中更改Windows SDK版本,并选择您安装的版本。

示例和文档

Polymer的API正在变化中。samples/目录中汇集了越来越多的示例项目,用于演示Polymer的各种库和功能。大多数项目都依赖于lib-polymerlib-engine,尽管许多项目并不使用lib-engine中除GLFW窗口创建和事件处理之外的功能。少数测试项目验证了关键内部系统的正确性,但也作为缺乏正式文档的函数或对象的临时参考。

贡献

Polymer处于早期开发阶段,欢迎有经验和无经验的开源贡献者参与。GitHub问题队列是了解即将推出功能的范围和优先级的好地方。对于大型拉取请求和功能实现,最好在开始工作之前与项目维护人员确认。

许可证

Polymer根据BSD 3条款许可证发布。作为一个框架/引擎,Polymer融合了来自各种来源的想法、代码和第三方库。许可证和归属完全记录在COPYING文件中。

引用

如果您在导致出版或公开演示的项目中使用Polymer,我们感谢您的引用。BibTex条目为:

@Polymer{Diakopoulos19,
  author = {Dimitri Diakopoulos],
  title  = {Polymer: A Prototyping Framework for Spatial Computing},
  year   = {2019},
  month  = {01},
  url    = {https://github.com/ddiakopoulos/polymer/},
  note   = {\url{https://github.com/ddiakopoulos/polymer/}}
}
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号