I have been started to learn all the Shader related stuffs in cocos2d-js again ( may be the Xth time ) and this time I decided to make something that really cool and interesting yet I can learn a lot from.
I have spent the whole day today and had a big progress on componentized the base of ShaderFX and I made a prototype of shaderforge (I have never used it though but I think this is a great target to aim at) like editor for ShaderFX.
BTW. The whole editor is created using cocos2d-js as well so it can run at any platform as well.
. more refactor, now all the schema and fxs are just json files
. export schema in editor (json)
. import schema in editor (json)
. export fx in editor (json)
. import fx in real game (json)
. canvas zoom in / zoom out
. test run layer for testing the exported fx
. output filename dialog layer
. more fx component experiment (math, sin, cos, time)
. some bugs fix
. preview for all RGBA output
. collapse / expand uniforms area panel
. fx component info layer
. Slot input / output name configurable
. bigger preview
. messagebox
. toast
. input textfield for all number
. live shader code preview
. refactor for instance id managerment
. BaaS + account system
. BaaS + schema upload / download
. localstorage save / load working schema
. shader + shadershop
. core fx component
. script for json compress + encrpt / decrpt
. html5 distribution
. electron distribution (mac / win)
. bug fix
A lot up progresses this week
Added a lots of core components and tried to make some fx with these components…
Some videos for this week :
Live preview code:
Plasma ( My PC is 13 inch so the all panels seems to be huddle together):
Beam:
And you might noticed that when I import a schema and restore the scene, some elements in the scene get offset (for example the menu on the top left conner).
Very few free time this week, so no progress no the Editor, but I did some experimental trial on :
SSRShaderNode (experimental)
A better ShaderNode based on cc.GLNode, supports:
. custom content size
. all transformation property
. v_texCoord, v_fragmentColor (shader)
FBOSprite (experimental)
Base on cc.Grabber used for screen effect (customize rect supported) (no optimized yet but a solid 60fps without screen recording app running)
I exported an ARPG game demo I made 4 years ago (cocos2d-html5) to cocos2d-js v3.16
And from now on I will use this game demo as a experimental project to see how I can apply all the effects that I created with SSRShaderEditor to a real game (Blend effect, Shader Effect, Shader Node, FBO)
here is a link that might be useful when you start experimenting with cocos creator. Would be awesome if you can extend the editor and make this project as a plugin to editor for shaders.