bp.js v0.6.0-alpha
Bulletproof
Advanced danmaku render engine based on WebGL and other HTML 5 technologies
以 WebGL 和其他 HTML 5 技术为核心的高级弹幕渲染引擎
WORK IN PROGRESS
You can also check out the live demo from http://hozuki.github.io/Bulletproof.
Details
Coming soon...
Downloading from NPM
npm install bp.js
(Why isn't the package name bulletproof
? Because that name was registered before this
package publishes to NPM. ( つ Д `))
Building & Testing
Git, Node.js, NPM and Gulp are required.
$ git clone https://github.com/hozuki/Bulletproof.git
$ npm install
$ git submodule update --init --recursive
$ cd lib/glantern
$ npm install
$ cd ../../
$ gulp
To preview, at least one of modern browsers is required:
- Chrome (50-60 fps)
- NW.js (50-60 fps)
- Electron Has not been tested, but should work.
- Firefox (40-60 fps)
- Edge (~24 fps)
- IE 11 (~20 fps)
- Chrome for Android (~16 fps)
Although all these browsers are supported, the order of the list shows the how the experience will be. Chrome is greatly suggested since the performance on it is the best; Firefox sometimes is slow; Edge and IE 11 always have serious performance degeneration.
Features
- High speed rendering
- Cross browser compatibility
- Web video player interface
<video>
- WebChimera
- Basic text danmakus (ref: CommentCoreLibrary)
- Flying (mode 0)
- Anchored (mode 1 - mode 6)
- Custom text danmakus (mode 7) (ref: BiliBili HTML5 Player)
- Scripted danmakus (mode 8)
Display
Functions
Global
Tween
Player
(almost,createSound()
andsetMask()
are in progress)ScriptManager
Utils
- External library:
Bitmap
- External library:
Storage
- Safety sandbox
- BiliBili XML parser
TODO
DisplayObject.mask
(Player.setMask()
)- Easing (
Tween
andITween
,$object.motion.easing
) - Linking
Player
to VideoPlayer Player.createSound()
Display.createButton()
- Library:
Bitmap
Display.createCanvas()
License
Bulletproof uses The MIT License. A copy of it can be found here.
A part of Bulletproof uses modifications based on webgl-utils.js
. Its license file
can be found here.
8 years ago