npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

dangle

v0.1.17

Published

<div align="center" style="position: relative;"> <img width="40" /> <a href="https://doric.pub"> <img alt="Doric" src="https://doric.pub/logo.png" width="200" /> </a> <img src="https://upload.wikimedia.org/wikipedia/commons/2/25/We

Downloads

44

Readme

Dangle

Dangle(Doric Almost Native Graphics Layer Engine),顾名思义,是一个旨在为 Doric 提供接近原生渲染性能的图形引擎,为了最大程度拥抱 JavaScript 的生态,目前采用的是 WebGL 2.0 的协议标准。

特色

JavaScript 生态

Dangle 目前支持了一系列的使用 JavaScript 函数库或者 API 并基于 WebGL 2.0 协议标准,能够在网页浏览器中创建和展示动画的三维计算机图形引擎如Three.jsStardust.js & D3.jsPlayCanvasBabylon.jsregl等。其中 Three.js 支持度已经相对完善,其余的引擎后续会逐步完善支持。

跨平台统一

依托于 Doric 跨平台框架,Dangle 可以在 Android 和 iOS 双端呈现出一致的三维视觉交互效果。Android 端 Dangle 在TextureView上进行绘制,而在 iOS 端则是在 UIView 的CAEAGLLayer上进行渲染。

纯粹的 WebGL

即使不使用任何现有的能够在网页浏览器中创建和展示动画的三维计算机图形引擎,Dangle 也可以支持纯粹的 WebGL 函数调用,具体的示例可以参考示例展示小结之中的 MDN WebGL。

3D 模型资源管理

遵从 Doric 提供的 Resource 体系,可以高效管理和动态加载较大或者较为复杂的 3D 模型。

RoadMap

支持 iOS Metal 渲染

目前由于 iOS 会逐步废弃 OpenGL ES,所以后续的在 iOS 侧的渲染方式会从 CAEAGLLayer 逐步演变为 MetalAngleMGLLayer,但目前由于 MetalAngle 对于 OpenGL ES 3.0 的转换只完成了 90%左右,因此暂时还无法做到全部支持,具体的代码可参考本项目的 feature/metal_angle 分支。

支持 Doric Qt

Qt 作为业界主流的 PC 业务客户端开发框架,Dangle 未来会考虑支持在 Windows 平台以 Direct X 的方式支持渲染,当然依然需要依托于 Angle 项目的 OpenGL 到 D3D 的转换。

支持 WebAssembly 形态的物理引擎

物理引擎目前如ammo.jsOimo.js等,还无法以WebAssembly的形态运行,后续会考虑在Doric侧支持WebAssembly的装载从而使Dangle中可以高效使用这部分的引擎能力。

示例展示

Three.js