Yi Shen
8826c7f4cb
Add emissive material support in deferred renderer ( #141 )
...
* wip: emissive material support in deferred renderer
* fix
2024-01-01 09:55:12 +08:00
Yi Shen
4fd2569e7b
Simplify camera api ( #140 )
...
* wip: use camera.projection instead of different camera instances
Avoid switch camera projection needs to recreate the instance
* update examples
* release 2.0.0-alpha.35
2023-11-20 18:15:23 +08:00
pissang
b64a1099b3
wip: shader minify
2023-08-19 16:56:35 +08:00
pissang
f9341eabed
add glsl minify plugin
2023-08-19 10:15:53 +08:00
pissang
89b620e57b
fix texture_compressed example
2023-03-15 10:15:54 +08:00
pissang
318c3c7ac7
add createCompositeNodeInput for simpler usage and better typing
2023-03-14 20:16:48 +08:00
Yi Shen
9767eb5c72
Add rect area light in the examples. Other improvements ( #138 )
...
* wip: add rect area light in example
* fix normal not normalized
* update example
* fix light accumulation for custom light in deferred renderer
* fix alpha is larger than 1 in the light accumulation
* naming tweaks
* updateOffset in deferred renderer
* convert albedo color to sRGB in gbuffer
* support depth attachment in gbuffer
* fix some shadow map issue in deferred renderer
* clear depth buffer after render
* update pcf kernel in shadow
* fix light accumulate
* fix pcf shadow in deferred renderer
* deferred: fix pcss
* respect to material linear
* can disable camera bounding box intersection in shadowmap
* deferred: show black when there is no light
* resize support pixelRatio
* release alpha.18
2023-03-11 10:06:45 +08:00
pissang
7af3e96686
some validation
2023-02-22 15:21:09 +08:00
pissang
4288ed5d31
getDevicePixelRatio to getPixelRatio
2023-02-19 15:39:56 +08:00
pissang
98d96d9d53
rename devicePixelRatio to pixelRatio. fix type errors
2023-02-19 15:38:25 +08:00
pissang
2f39cc4c9c
optimize texture size r/w. fix test cases
2023-02-18 19:18:30 +08:00
pissang
7bb94bc352
fix: composite node add depthBuffer flag
2023-02-18 18:58:31 +08:00
pissang
d8d3dd164e
optimize cubemap prefilter
2023-02-18 18:22:07 +08:00
pissang
d852cb7baa
optimize texture source management.
...
Use unified source property.
Use checkReady promise instead of onload and onerror callbacks
2023-02-18 13:44:42 +08:00
pissang
e9f3b507b3
rename GLRenderer to GLPipeline
2023-02-18 08:15:51 +08:00
pissang
db11d9b9ab
support int for geometry attribute
2023-02-17 21:47:24 +08:00
pissang
ef6b8d2a27
fix type
2023-02-17 18:56:11 +08:00
pissang
b04cfc008b
fix texture2d array
2023-02-17 18:32:49 +08:00
Yi Shen
5b08297737
Simplify shader uniform type. No complex conversions. ( #137 )
...
* use array property instead of 'v' postfix to simplify the type
* simplify shader uniform type and material uniform type. no conversion
* add strcut uniform type and optimize code
* remove struct
2023-02-16 22:58:23 +08:00
Yi Shen
0030d7db95
Switch to WebGL 2.0 ( #136 )
...
* wip: upgrade to webgl2
* update shaders to version 300
* fix index for texture must be constant in webgl 2
* remove npot
* fix naming conflicts of using texture previously
* fix wrong internal format in float textures.
* fix depth texture format
* fix texture enabled define
* fix instancing
* fix some cases
* fix some case use extension
* fix frag depth
* tweak
* generate mimap for NPOT texture
* remove debugger code
* fix alchemyao case
* fix ssr case
* not generate mipmap in compositor by default.
2023-02-15 22:09:08 +08:00
pissang
38f1ad0cc0
fix vite config
2023-02-09 15:50:06 +08:00
pissang
95e941f975
fix(node): fix node name in opts
2022-06-10 21:55:27 +08:00
pissang
11d70ff335
fix material clone
2022-06-06 23:47:15 +08:00
pissang
fdb28460db
feat(pcss): optimize pcf in pcss
2022-06-06 23:17:16 +08:00
pissang
802be18e04
feat: optimize pcss soft shadow
2022-06-06 20:23:19 +08:00
pissang
65e8412771
feat: try pcss shadow
2022-06-06 12:31:15 +08:00
pissang
1ee8db7dcf
refact(viewport): optimize viewport management. get dpr correctly in framebuffer
2022-06-05 18:39:25 +08:00
pissang
bc27630199
refact: rename basic shader to unlit shader
2022-06-05 16:12:01 +08:00
pissang
9932995d70
refact(deferred): add skybox support
2022-06-05 15:57:19 +08:00
pissang
77a8761695
example: add lighting compositor
2022-06-04 21:54:37 +08:00
pissang
71e353c033
round texture size. fix rendering bug in m1max
2022-06-03 16:26:10 +08:00
pissang
f7d4f65276
refact: fix cascade shadow casued by the refactord framebuffer binding
2022-06-03 16:03:03 +08:00
pissang
aeab338ecc
example: optimize taa
2022-06-03 13:51:29 +08:00
pissang
2063c7b189
example: fix texel size in TAA
2022-05-30 17:37:32 +08:00
pissang
37d44a3399
example: add taa
2022-05-28 16:07:02 +08:00
pissang
c59c699840
Delete pp_lensflare.html
2022-05-25 16:18:05 +08:00
pissang
502240a008
refact: all nodes default to have outputs. Avoid writing too much boilerplate code
2022-05-25 16:17:56 +08:00
pissang
46a8212824
example: update alchemyao example
2022-05-24 17:10:59 +08:00
pissang
c55f21ff17
refact(composite): split updateLinks logc from prepare method in group node.
...
Leave prepare to developers. Avoid forgetting to call super.prepare leads to unexpected error that is hard to debug
2022-05-24 17:02:13 +08:00
pissang
a3a24bc5c8
refact(composite): fix output scale param. add bloom node in example
2022-05-23 23:45:28 +08:00
pissang
529df38a2e
refact: updating textureSize automatically
2022-05-23 17:57:19 +08:00
pissang
0023abf0a4
test: update ssr examples
2022-05-22 22:59:36 +08:00
pissang
4d3976c8ff
refact(composite): input of group node can be linked to multiple inner node.
...
add SSR example
2022-05-22 22:04:26 +08:00
pissang
5cf76d9808
refact(composite): add getGroupInput, getGroupOutput to link the sub node
2022-05-22 17:02:50 +08:00
pissang
cadf8d2a96
refact(composite): inputs is optional
2022-05-22 09:04:47 +08:00
pissang
9b18f910e1
fix(render): fix some attributes may be not enabled.
...
Location may be discontinuous and only check by max enabled location is not enough
2022-05-22 08:40:38 +08:00
pissang
0a503cbca5
example: update ssao shader code
2022-05-21 21:23:47 +08:00
pissang
f75331acde
optimize composite. add ssao example
2022-05-21 21:23:30 +08:00
pissang
c3f1a34969
refact(composite): default width and height from renderer.
...
Update all output parameters. for the case like gbuffer node
2022-05-21 14:59:13 +08:00
pissang
1dcbe540d5
refact(composite): derive output texture params. add gaussian blur group node example
2022-05-20 14:47:53 +08:00