Web3D展示框架whs.js:基于Three.js的Web3d应用程序的超快3D框架
whs.js介绍:
whs.js是一个在Three.js基础上构建的Web3D应用框架,它实现了一个具有组件系统和插件支持的核心,可以快速开发出web3D场景。
whs.js如何获取
whs是开源项目,因此你可以直接到Github上获取,也同时提供了相关文档和案例演示,今后可能不会直接给出地址,原因大家都知道!
直接使用
安装:
npm install whs
引入:
<script src="js/three.min.js"></script>
<script src="js/whs.min.js"></script>
使用:
const app = new WHS.App([new WHS.ElementModule(), // Apply to DOM.new WHS.SceneModule(), // Create a new THREE.Scene and set it to app.new WHS.DefineModule('camera', new WHS.PerspectiveCamera({ // Apply a camera.position: new THREE.Vector3(0, 0, 50)})),new WHS.RenderingModule({bgColor: 0x162129}), // Apply THREE.WebGLRenderernew WHS.ResizeModule() // Make it resizable.
]);
app.start(); // Run app.
相关特性
- 使用简单
- 加速3D场景原型设计
- 基于组件的场景图
- 多线程,任何高性能物理模型的简单集成
- 渲染自动化
- ES2015+基于
- 扩展系统(模块)
- 网络友好
- 集成Three.js渲染引擎,可以同时使用whs.js和Three.js
案例展示
官网文档中展示了相当多的案例,我们通过Gif来简单感受下,动图不能太大,可能效果稍差,建议直接去文档看案例
- 案例一(最后的恐龙):
- 案例二(像素火山),此图不完整,可简单插件官方案例
- 旋转的正方体
- 类天体旋转3D效果
组件
whs将各种物理场景进行了抽象,变成一个个组件
core(核心抽象层):
- App
- CameraComponent
- Component
- LightComponent
- Loop
- MeshComponent
- ModuleManager
- ModuleSystem
components/meshes(网、线、面、盒等)
- Box
- Circle
- Cone
- Cylinder
- Dodecahedron
- Extrude
- Group
- Icosahedron
- Importer
- Lathe
- Line
- Octahedron
- Parametric
- Plane
- Polyhedron
- Ring
- Shape
- Sphere
- Tetrahedron
- Text
- Torus
- Torusknot
- Tube
components/lights(灯光)
- AmbientLight
- DirectionalLight
- HemisphereLight
- PointLight
- SpotLight
components/cameras(相机)
- CubeCamera
- OrthographicCamera
- PerspectiveCamera
还包括一些模型等
modules
- DefineModule
modules/app
- ControlsModule
- ElementModule
- FogModule
- OrbitControlsModule
- PostProcessorModule
- RenderingModule
- ResizeModule
- SceneModule
- StateModule
- VirtualMouseModule
modules/mesh
- AnimationModule
- DynamicGeometryModule
- TextureModule
总结
总的来说whs.js是一个有意思的基于Three.js的web3D框架,其结合3D动画能做出一些非常炫酷的场景出来,模拟出个各种实际物理意义上的模型出来!还是值得我们学习的!
转载:www.ruanally.com
Web3D展示框架whs.js:基于Three.js的Web3d应用程序的超快3D框架相关推荐
- pdfh5.js 基于pdf.js和jQuery,web/h5/移动端PDF预览手势缩放插件。
pdfh5.js 基于pdf.js和jQuery,web/h5/移动端PDF预览手势缩放插件. 注意:本地绝对路径地址不能加载,跨域问题用代理或者服务端解决. svg模式渲染存在缺陷,只能渲染普通pd ...
- html 实时曲线 js,基于d3.js实现实时刷新的折线图
先来看看效果图 下面直接上源代码,html文件 实时刷新折线图 .axis path, .axis line{ fill: none; stroke: black; shape-rendering: ...
- 强烈推荐:小程序常用的6款框架总结
随着前端的知识不断更新,小程序也成为了我们开发中的日常.微信小程序.百度小程序.支付宝小程序.头条小程序等等不断涌入我们的生活,随着小程序的火爆,各种小程序框架不断出现,也在不断更新.路漫漫,学不完呀 ...
- [开源] Gio.js -- 一个基于 Three.js 的 Web3D 地球数据可视化库
在这里和大家分享一个和小伙伴们一起开发的开源库 Gio.js .Gio.js 是一个基于 Three.js 的 web 3D 地球数据可视化的开源组件库.使用 Gio.js 的网页应用开发者,可以快速 ...
- Gio.js -- 一个基于 Three.js 的 Web3D 地球数据可视化库(一)
Gio.js 开始使用 安装 使用 基础元素 简介 表面 国家 连接线 背景 光晕 海洋 性能监控 配置 通过构造函数配置 通过API配置 配置参数表 功能设计型API 设置初始国家 高亮被提及国家 ...
- Gio.js -- 一个基于 Three.js 的 Web3D 地球数据可视化库(二)
Gio,js 颜色风格类API 设置输出颜色 设置输入颜色 设置光晕颜色 设置背景颜色 设置海洋亮度 设置相关国家亮度 设置被提到国家亮度 数据 添加数据 清除数据 切换数据集 输入数据到洲 异步添加 ...
- 基于 Egg.js 框架的 Node.js 服务构建之用户管理设计
转载需经本人同意且标注本文原始地址:https://zhaomenghuan.github.io/blog/nodejs-eggjs-usersytem.html 前言 近来公司需要构建一套 EMM( ...
- 分享一个基于jQuery,backbone.js和underscore.js的消息提示框架 - Backbone.Notifier
在线演示 本地下载 我们曾今在以前的文章中介绍过jQuery的警告和提示框插件,今天这里我们介绍一个开源的消息提示框架 Backbone.Notifier,目前版本为version0.1.使用这个框 ...
- Pomelo:网易开源基于 Node.js 的游戏服务端框架
Pomelo 是基于 Node.js 的高性能.分布式游戏服务器框架.它包括基础的开发框架和相关的扩展组件(库和工具包),可以帮助你省去游戏开发枯燥中的重复劳动和底层逻辑的开发.Pomelo 不但适用 ...
最新文章
- 使用Cacti监测系统与网络性能(3)
- Any problem in computer science can be solved with another layer of indirection
- react native命令行全局安装
- u盘安装linux 提示no such device_IGH EtherCAT 开源主站安装及测试
- 用74ls90组成二十四进制计数器_CD4017是什么?十进制计数器分频器CD4017的逻辑功能呢?...
- amos调节变量怎么画_AMOS 中验证性因素分析(CFA)
- 若依前端如何生成序号?
- Edge浏览器,设定主页(默认打开页面)方法
- gxworks2使用指令手册_三菱 GX 三菱 GX Works2操作手册(智能功能功能模块操作篇)...
- 全面了解风控数据体系
- matlab最简矩阵,Matlab中,将矩阵A化为行最简阶梯型矩阵,需借助指令:
- Android之自定义动画框架实现ScrollView滚动动画总结(雷惊风)
- 论游戏中Buff的实现
- 511遇见安卓手机投屏支持一键转无线群控
- 请简述什么是mysql,MySQL之什么是MySQL
- 2020-11-11,单身快乐
- android高德地图中心点,高德地图中心点以及自定义infowindow
- ServiceMesh实践与探索
- qq邮箱 北航邮箱配置 foxmail
- 制作一个简单HTML个人网页网页——人物介绍梵高(HTML+CSS)