70 Commits

Author SHA1 Message Date
PP
86399f2b4a support @base/global module (#16247) 2023-09-20 10:14:21 +08:00
Zhou Zhenglong
e583e37d34 Merge branch 'v3.8.1' into develop-merge 2023-08-11 14:44:30 +08:00
徐兵
b7ad5b1e6b fix skybox model not updated when onGlobalPipelineMacroChange (#15886) 2023-08-07 15:23:45 +08:00
hyde zhou
ff32117ca6 add enable gpu driven (#15855)
* add enable gpu driven
2023-08-03 12:27:33 +08:00
oahc09
f54865e23d fix:xr right eye render failed when using custom render pipeline (#15319) 2023-06-06 18:46:16 +08:00
minggo
a22d16bbe6 Merge branch 'v3.7.3' into merge_v3.7.3 2023-04-24 11:26:58 +08:00
zhakesi
15773dfdd8 add UBOWorldBound into used UniformVectors (#14745) 2023-04-10 17:37:39 +08:00
oahc09
8abee5fe1c feat:xr interface support xr eye render js callback (#14665) 2023-03-27 16:07:23 +08:00
santy-wang
0a81bf445e Merge branch 'develop' of github.com:cocos-creator/engine into v3.7.2 2023-03-13 16:51:47 +08:00
Zeqiang Li
71b764ad0d frame fence (#14310) 2023-02-28 17:43:38 +08:00
troublemaker52025
a7b090390e [Feature] add ranged directional light (#14306) 2023-02-23 17:58:47 +08:00
troublemaker52025
682f0a25cd [Feature] add point light (#14220) 2023-02-22 10:12:21 +08:00
Zhou Zhenglong
2b54f20d0a Merge branch 'v3.7.1' into v3.7.2-merge 2023-02-13 00:47:24 +08:00
hyde zhou
5abd56ac2f remove manual descriptor registration (#14136)
Co-authored-by: Zeqiang Li <zeqiang-li@outlook.com>
Co-authored-by: GengineJS <476393671@qq.com>
2023-02-03 15:17:32 +08:00
jk20012001
42e4a14f82 debug view support with native engine (#13996) 2023-01-09 10:18:21 +08:00
minggo
313c58fe33 Improve utils api doc (#13922) 2022-12-28 15:04:56 +08:00
pandamicro
afd22296b4 MIT license update and to new year 2023 (#13927)
* Cpp MIT license update and to date
* TS MIT license update and to date
2022-12-28 11:25:12 +08:00
江战
b4e61735c7 PR_Test download external library (#13861) 2022-12-20 17:23:59 +08:00
江战
ba7e90475c pipeline js bindings (#13786) 2022-12-15 09:51:04 +08:00
pandamicro
313a1032b7 Separate present time from renderer time in profiler (#13684) 2022-12-06 18:24:02 +08:00
李吉林
13d49b1a9b fix mesh merge error (#13639)
* fix mesh merge error

* add log.h for android

* fix DebugRenderer update on metal
2022-12-05 10:18:22 +08:00
fqamic
71314f0e81 merge xr platform function codes (#13360)
* feat: add xr settings for xrEnv and xrType

* improve: remove redundant code for xr interaction

* improve: remove redundant code for frameMove

* fix: xr jsb bind adapt to swig

* feat: adapt to xr preview mode, add handle simulation event
2022-11-14 17:12:25 +08:00
江战
7ccd14e6e6 JSB export math class : Vec2/Vec3/Vec4/Quat/Mat3/Mat4/Color (#12968) 2022-10-31 17:24:54 +08:00
troublemaker52025
fcd9c516df [fix] shader compilation error: vs uniform exceeded (#13174) 2022-10-28 15:45:44 +08:00
江战
280fd976bc Add EventTarget & EventBus (#13100) 2022-10-28 15:44:33 +08:00
minggo
83a2717fac Fix module import (#13140)
* fix core module import style

* import murmurhash2_32_gc from core module

* do not export visibleRect
2022-10-25 16:38:38 +08:00
hyde zhou
316180b777 [develop] enable native custom pipeline (#13133) 2022-10-25 11:10:14 +08:00
hyde zhou
e8366a7a7b [develop] custom pipeline startup refactoring (#12886)
* manually merge bloom, fg culling, native pipeline updates

* fix lint

* camera usage added

* use parent name instead of default & add some phase names

* adding render graph execution

* execute render graph added

* refactoring workflow

* uses interface instead of abstract class

* add setup step

* camera usage added

* adding setup stage

* unify camera get set

* adding ppl setup

* fixed bloom effect

* change descriptor merge

* modify uniform collect as descriptor

* revert

* revert phase

* adding render callback

* update setup workflow

* pipeline builder updated

* refactoring native pipeline setup

* revert jsb

* improve cameraList clear

Co-authored-by: zxx43 <zxx43@hotmail.com>
Co-authored-by: qiuguohua <>
2022-09-27 17:57:21 +08:00
林玮
e7e8036dcd fix: editor and cocos-play issues (#12908)
* fix: editor and cocos-play issues

* * Change 'windowId' to optional.
2022-09-27 17:45:21 +08:00
Zach Lee
af54ad1ed2 Feat: Remove the framebuffer hub. Manually update framebuffer after attachment or swapchain changes. (#12812) 2022-09-23 10:15:10 +08:00
林玮
c2009089f4 fix: touch issue on retina display (#12834)
(cherry picked from commit d5894fdafe)
2022-09-21 15:36:56 +08:00
hyde zhou
f85ca2fe82 [develop pipeline] refactor framegraph code and updated pipeline (#12794) 2022-09-16 18:14:49 +08:00
minggo
bd0fcc67c4 move cocos/core/pipeline to cocos/rendering (#12797)
* move cocos/core/pipeline to cocos/rendering
2022-09-16 16:10:26 +08:00
林玮
785fd91511 Add multi-windows support (#12243)
Co-authored-by: bofeng.song <bofeng.song@chukong-inc.com>
2022-09-15 14:55:44 +08:00
oahc09
448c093cf4 improve:remove IXRInteraface's dependent from GFXDevice.h (#12690)
* improve:remove IXRInteraface's dependent from GFXDevice.h

* improve:remove IXRInteraface's redundant code from DeviceValidator.h/cpp
2022-09-06 17:44:46 +08:00
James Chen
dc81a20f3a [v3.6.1] Fix jointTexture configuration not loaded on native platforms. (#12639)
* Fix jointTexture configuration not loaded on native platforms.

* Remove unused std::floor in Root.cpp

* Fix clang-tidy
2022-09-01 12:56:40 +08:00
QingliWang
6a8f53b186 Add features for XR developement. (#12413)
* Change Android mainloop, add global config and template projects for XR.

* Change gfx/gles device's process flow for XR, working with other PRs, waiting.

* Change gfx/Vulkan device's process flow for XR, working with other PRs, waiting.

* Change render process for XR.

* Develop XR input and events.

* Develop 3D feature of UI widgets and raycast effect for XR.

Co-authored-by: fqamic <fqamic@vip.qq.com>
2022-08-22 16:34:45 +08:00
minggo
e0bfd1d380 Merge branch 'v3.6.0' into merge_v3.6 2022-07-26 12:01:26 +08:00
hyde zhou
0c82b143fc [V3.6.0 pipeline] added web forward and deferred pipelines (#11646)
* added custom web forward and deferred pipelines
2022-07-21 12:40:13 +08:00
James Chen
ab733d5644 [v3.6.0] Fix some potential memory issues (#12045)
* Fix deleting IntrusivePtr _pipeline object in Rot.cpp.

* Remove unused code.

* Avoid nullptr dereference in SceneCulling.cpp

* Fix memory leaks for some objective-c code.

* [dragonbones] Avoid extra memory allocation and copy in CCFactory.cpp

* [dragonbones] DragonBonesData::binary needed to be 'freed' rather than 'delete'd.

* [dragonbones] Fix using delete to release memory allocated by 'new[]' in SlotColorTimelineState.

* Remove variable srcOffset & dstOffset in Mesh::merge
2022-07-18 16:39:26 +08:00
James Chen
f644e78e5c [v3.6.0] Refactor native Batcher2d lifecycle (#12011) 2022-07-15 14:17:33 +08:00
James Chen
e3d0f93460 getGeometryRenderer::update must be wrapped in CC_USE_GEOMETRY_RENDERER macro. (#11928) 2022-07-11 18:57:10 +08:00
bofeng-song
7c8492c668 remove unneeded code, gameActivity has been ensured the render lifecycle (#11897) 2022-07-08 18:20:38 +08:00
李吉林
1f12c3e88e fix geometry renderer update buffer in metal (#11772)
* fix geometry renderer update buffer in metal
2022-06-30 16:37:07 +08:00
hyde zhou
e45943058e add macro (#11484)
* add render-pipeline macro
2022-06-13 18:38:26 +08:00
yangchao
c46b8d29ab add server mode marco (#11476) 2022-06-13 13:46:19 +08:00
hyde zhou
24ab74050d V3.6.0 pipeline (#11327)
* Refactoring EffectAsset, ProgramLib, (Material) Pass.

Co-authored-by: Zeqiang Li <zeqiang-li@outlook.com>
Co-authored-by: zxx43 <zxx43@hotmail.com>
Co-authored-by: GengineJS <476393671@qq.com>
2022-06-13 11:15:21 +08:00
李吉林
1e34d3551a V3.6.0 geometry compatibility (#11393)
* compatibility for geometry renderer

* add deprecated.ts

* add empty implementation in web-pipeline

* ts lint
2022-06-08 11:11:10 +08:00
hyde zhou
02407dbc70 V3.6.0 pipeline (#11277)
* decouple GlobalDescriptorSetManager from RenderPipeline

* formatting

* move interface onGlobalPipelineStateChanged from PipelineSceneData to Pipeline

* add layouts

* fix eslint error

* rendergraph creates device resources

* restore resourceGraph

* resource graph updated

* add scene interface

* layout graph updated

* stop use IntrusivePtr<gfx::Swapchain>

* add setViewport setScissor

* scene transversal modified

* accidentally omitted

* remove pipeline event from pipeline, decouple terrain from render pipeline

* shadingScale moved from PipelineSceneData to Pipeline

* Pipeline removed from PipelineSceneData

* pipelineEvent refactored

* fix typo

* rendergraph executes

* interface changed

* fix submit

* Update the draw function

* pipeline runtime added to pipeline

* automatically barrier

* typo

* comment

* forgot sth important

* add classic/custom pipeline switch

* web pipeline can be enabled

* relax pipeline interface

* pipeline use gfx::Color

* decouple native RenderPipeline

* fix clang tidy

* add get pipelineSceneData

* present refactored

* added executor example

* half way done

* find slot

* merge & sort layout

* layout graph updated

* enable native usesCustomPipeline

* change mergedbs

* fix comment

* fix eslint error

* fix

* draft

* update the rendergraph compiler

* update the compiler

* update executor

* update to latest

* revert mtlcmdbuffer manually

* valid added

* external node

* add framebuffer

* fix linter

* fix linter

* fix implicit narrow cast

* fix linter

* use native root.pipeline

* use Root to get pipeline instance

* fix ccstd::string

* turn off validation

* cleanup

* ccstd::pmr::string changed

* update the pipeline ubo

* use ccstd::pmr::string

* uses ccstd::pmr::vector

* uses ccstd::pmr::map

* reconstruction

* external res

* compile issue

* clang tidy

* fix ccstd::pmr::string hash

* fix potential issue

* Fixed some rendering errors of webpipeline in the editor

* Optimize attachment load/storeOp logic

* update executor

* WebPipeline bug fixed in editor

* Fix the problem of resource cache error when camera is deleted or added

* webpipeline performs logic adjustments and bug fixes

* render graph updated

* descriptor updated

* descriptor updated

* fix member traits

* libstdc++ does not support hashing std::pmr::string on linux

* refactor descriptor

* jsb allocator walkaround

* rename

* descriptor type refactored

* fix default

* adding layout graph builder

* transfer env

* switch env

* switch env

* adding native layout builder

* adding native builder

* adding layout graph

* adding descriptor

* adding descriptor layout

* create layout graph builder added

* fix root

* format

* add web layout graph builder

* refactor web layout graph

* fix intrusive ptr

* descriptor set data updated

* before applying another idea

* debug string added

* adding render graph

* adding resource graph

* adding native pipeline

* graph remove edge temporary fix

* remove_edge simplified

* remove edge simplified

* outIter renamed

* remove edges simplified

* fix reference graph impl

* run test case

* adding native impl

* remove unused native

* queue added

* pass reorder v1.0

* adding native pipeline

* adding native pipeline

* fix bug

* render graph setup added

* render graph updated

* fix ccstd::string

* getFirstChildLayout, num of children must be 1

* remove examples

* structure refactor

* pass reorder & framegraphDispatcher interface

* remove test code

* remove debug code

* ts added object detection

* ts get name added

* RenderGraph setup moved

* add ts layout graph implement

* fix lint

* fix ci: implicit type conversion

* ci

* adding warmup

* turn off custom

* pipeline updated

* format

* try disable clang 64 to 32 narrow warning

Co-authored-by: zxx43 <zxx43@hotmail.com>
Co-authored-by: GengineJS <476393671@qq.com>
Co-authored-by: Zeqiang Li <zeqiang-li@outlook.com>
2022-06-01 19:06:59 +08:00
hyde zhou
243547ffac V3.6.0 pipeline (#11021)
* layout graph renamed

* layout graph updated

* cntr updated

* adding descriptor hierarchy

* add present pass

* update jsb

* add layout graph

* change setter inheritance

* fix web-pipeline diamond inheritance problem

* cleanup

* change namespace

* adding layout graph

* add external resource type

* add factory

* adding native pipeline

* custom pipeline added

* adding UuidGraph

* fix misuse of drawAPI on metal (#10195)

* uuid graph added

* adding pipeline runtime

* add uuid contains, rename addressable

* pipeline interface changed

* rendergraph completes filtering and dependencies

* Change the residency judgment

* RenderTexture changed to RenderWindow

* adding PipelineRuntime

* adding pipeline wrapper

* fix link error

* remove createPipelineRuntime

* decouple GlobalDescriptorSetManager from RenderPipeline

* formatting

* move interface onGlobalPipelineStateChanged from PipelineSceneData to Pipeline

* add layouts

* fix eslint error

* rendergraph creates device resources

* restore resourceGraph

* resource graph updated

* add scene interface

* layout graph updated

* stop use IntrusivePtr<gfx::Swapchain>

* add setViewport setScissor

* scene transversal modified

* accidentally omitted

* remove pipeline event from pipeline, decouple terrain from render pipeline

* shadingScale moved from PipelineSceneData to Pipeline

* Pipeline removed from PipelineSceneData

* pipelineEvent refactored

* fix typo

* rendergraph executes

* interface changed

* fix submit

* Update the draw function

* pipeline runtime added to pipeline

* automatically barrier

* typo

* comment

* forgot sth important

* add classic/custom pipeline switch

* web pipeline can be enabled

* relax pipeline interface

* pipeline use gfx::Color

* decouple native RenderPipeline

* fix clang tidy

* add get pipelineSceneData

* present refactored

* added executor example

* half way done

* find slot

* merge & sort layout

* layout graph updated

* enable native usesCustomPipeline

* change mergedbs

* fix comment

* fix eslint error

* fix

* draft

* update the rendergraph compiler

* update the compiler

* update executor

* update to latest

* revert mtlcmdbuffer manually

* valid added

* external node

* add framebuffer

* fix linter

* fix linter

* fix implicit narrow cast

* fix linter

* use native root.pipeline

* use Root to get pipeline instance

* fix ccstd::string

* turn off validation

* cleanup

* ccstd::pmr::string changed

* update the pipeline ubo

* use ccstd::pmr::string

* uses ccstd::pmr::vector

* uses ccstd::pmr::map

* reconstruction

* external res

* compile issue

* clang tidy

* fix ccstd::pmr::string hash

* fix potential issue

* Fixed some rendering errors of webpipeline in the editor

* Optimize attachment load/storeOp logic

* update executor

* WebPipeline bug fixed in editor

* Fix the problem of resource cache error when camera is deleted or added

* webpipeline performs logic adjustments and bug fixes

* render graph updated

* descriptor updated

* descriptor updated

* fix member traits

* libstdc++ does not support hashing std::pmr::string on linux

* refactor descriptor

* jsb allocator walkaround

* rename

* descriptor type refactored

* fix default

* adding layout graph builder

* adding native layout builder

* adding native builder

* adding layout graph

* adding descriptor

* adding descriptor layout

* create layout graph builder added

* fix root

* format

* add web layout graph builder

* refactor web layout graph

* fix intrusive ptr

* descriptor set data updated

* debug string added

* adding render graph

* adding resource graph

* adding native pipeline

* graph remove edge temporary fix

* remove_edge simplified

* remove edge simplified

* outIter renamed

* remove edges simplified

* fix reference graph impl

* adding native impl

* remove unused native

* queue added

* adding native pipeline

* adding native pipeline

* fix bug

* render graph setup added

* render graph updated

* fix ccstd::string

Co-authored-by: Zeqiang Li <zeqiang-li@outlook.com>
Co-authored-by: GengineJS <476393671@qq.com>
Co-authored-by: zxx43 <zxx43@hotmail.com>
2022-05-30 11:50:22 +08:00