Giter VIP home page Giter VIP logo

general-scene-interface's Introduction

General Scene Interface

build

This Project Is Still In Uploading Process.

抛砖引玉

Build Your Web3D Programs With a Paradigm.

GSI 是一个 Web 3D 实时渲染领域的伞项目,包含一套标准化的通用场景接口,以及基于其上的工具集。致力于为 Web 3D 中的必要环节提供接口规范、算法范式和最佳实践,作为砖瓦,帮助开发者快速构建复杂的渲染引擎和高级 3D 软件。

本项目不是一个新的渲染引擎,恰恰相反,本项目可以与 Web 和桌面端的渲染引擎、建模软件协同工作。

Development

MacOS, Linux and Windows WSL are supported for building this project.

Setup

Make sure you have nodejs and lerna@4 installed.

node -v # v14 or higher.

npm -v # v9 or higher. v6 is not supported.

npx lerna -v # v4.x only. v5 is not supported.

And then.

npm run setup

Build

npm run build

If something goes wrong. You should try npm run rebuild which will clean up all the build caches.

Serve examples

Good old fashioned npm start

Code of Conduct

Alibaba has adopted a Code of Conduct that we expect project participants to adhere to.

Please refer to Alibaba Open Source Code of Conduct (中文版).

协议

本项目使用 MIT 协议,three.js 源码版权归 three.js 作者所有。

详见 LICENSE

免责声明

General Scene Interface (GSI) is a 3-D graphics toolkit library with a scene definition API which is inspired by syntax of three.js, glTF 2.0 and other popular specifications and implements.

We makes no claim that GSI is compatible of glTF.

WebGL and the WebGL logo are trademarks of the Khronos Group Inc.

glTF and the glTF logo are trademarks of the Khronos Group Inc.

OpenGL® and the oval logo are trademarks or registered trademarks of Hewlett Packard Enterprise in the United States and/or other countries worldwide.

OpenGL is a registered trademark and the OpenGL ES logo is a trademark of Hewlett Packard Enterprise used by permission by Khronos.

本项目包含的 three.js 的部分源码,版权归 three.js 的作者所有。

本项目的 scene graph 部分的接口语义,借鉴了 threejs, glTF 2.0 和 BabylonJS 的命名思路,未使用 BabylonJS 的源码。

本项目没有经过 khronos 验证程序的验证,并非 “兼容” 或 “实现” 了 glTF, OpenGL 和 webgl 的接口或标准。

对于本项目的使用者或标准实现者,如果需要 khronos 的认证,可自行向 khronos 提交认证申请。

详见 ./disclaimer.txt

general-scene-interface's People

Contributors

gaomeng1900 avatar leonyuanyao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

general-scene-interface's Issues

Fix sprite.

The IR Interface for sprite has changed.(v 0.1.0-alpha).
Corresponding implements needs update.

/* @FIXME @浅寻 检查这个判断的必要性

/* @FIXME @浅寻 transform 应该在 shader 中做

/* @FIXME @浅寻 这样算出来的 bbox 是不准确的,position 在 shader 里会被动态修改

/* @FIXME @浅寻 使用插槽做这个事情,不定义为特殊属性

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.