Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: shaders have same uniform name, different type will effect wrong #3876

Merged
merged 3 commits into from
Feb 26, 2019

Conversation

random634
Copy link

Re: cocos-creator/2d-tasks#

Changes:

  • 修复不同shader使用同一个uniform名字,不同类型,会出现部分shader获取的数据不对的问题

@pandamicro
Copy link
Contributor

对于数组类型不能直接设置为传入的 value 哦,需要强制走 uniform 不存在的逻辑

https://github.com/cocos-creator/engine/blob/2cd3f462f0662e1cf4c316b8f69520cce43aa223/cocos2d/core/renderer/render-engine.js#L10071

可以在这之前加判断

dirty = true;
oldValue[i] = value[i];
uniform.value[i] = value[i];
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这里之前的实现使用一个临时变量来访问是更高效的,没必要改动

@pandamicro
Copy link
Contributor

pandamicro commented Feb 26, 2019

Thanks for your contribution @random634

@pandamicro pandamicro merged commit 73b207a into cocos:v2.0-release Feb 26, 2019
@pandamicro
Copy link
Contributor

@2youyou2 麻烦手动同步到 2.1 分支

2youyou2 added a commit to 2youyou2/engine that referenced this pull request Mar 4, 2019
pandamicro pushed a commit that referenced this pull request Mar 11, 2019
* fixed dynamicAtlasManager is not defined when disable dynamic atlas module

* fixed fps debug info can not show

* add cc.sys.glExtension

* add device.setUniformDirectly

* sync #3876

* optimize 3d skeleton animation performance

*  use Float32Array insteadof Mat4 for jointMatrix

* move skeleton files to skeleton folder
pandamicro pushed a commit that referenced this pull request Mar 11, 2019
* Add RenderMode TS support (#3879)

Add spine assembler var define

* fix unit test for sprite (#3870)

* Fix 1.x to 2.x particle custom data is invalid bug (#3885)

* Improve particle definition data code (#3892)

* fix event failed to reorder after modifying zIndex for 2d-tasks/issues/1130 (#3895)

* Move BlendFunctionFactors to Sprite and ParticleSystem only (#3900)

* change API:loadSubpackage to load index.js (#3899)

* mark component.enabled as animatable (#3898)

* ban JIT support on baidugame (#3903)

* Fix dragonbones multiple texture bug (#3897)

* Fix dragonbones change cloth bug

* Adapt to old api-> on off once

* DragonBonesAsset do not store dragonBones data

* fix some error

* fix web spine debug draw color error

* Set limit time to 30s

* fix label rendering in open data context (#3911)

* fix: shaders have same uniform name, different type will effect wrong (#3876)

* fix: shaders have same uniform name, different type will effect wrong

* fix shaders have same uniform name, different type will effect wrong

* fix shaders have same uniform name, different type will effect wrong, refine

* add deprecated property in EditBox in v2.0 (#3912)

* Fix dragonbones exception (#3914)

* revert particles system attribute definition (#3919)

* fix emit target scale changed events twice (#3922)

* add the tween test case (#3908)

* add the tween test case

* modify the format of the test-tween.js

1. keep all chain method start at the char 'n' below

* fixed the tween bugs

* Fix spine premultipliedAlpha serialize bug (#3924)

* cancel disable dynamic atlas on chrome. (#3929)

* Add cache mode of label. (#3916)

* Add cache mode of label.

* fix revised comments of pr.

* Simplified variable name.

* share canvas pool.

* cancel use node color.

* modify comment and reserve _batchAsBitMap.

* optimize the assignment of color and delete blendFactor.

* delete reserveImage.

* modify to center alignment.

* modify letter-font do not use node color.

* add outline support of letter-font

* add letter atlas reset on editor when scene loaded.

* change LETTER to CHAR

* modify comment

* Wechat -> WeChat

* Add spine render mode chinese tip (#3933)

* fix label rendering error on native (#3936)

* fix label rendering error on native

* fix rendering error on native

* revert first commit

* clear letter atlas when scene launch. (#3938)

*  reset the CHAR mode to NONE on subdomin. (#3940)

* reset the CHAR mode to NONE on subdomin.

* reset CHAR mode on subdomin

* set rigidbody awake visible is false (#3941)

* fix canvasPool error on subdomin (#3942)

* update rigidbody awake tips and add awakeOnLoad (#3944)

* fix label error when font change on editor. (#3946)

* Rename skeleton RenderMode to AnimationCacheMode (#3947)

* Rename skeleton RenderMode to AnimationCacheMode

* Rename skeleton RenderMode to AnimationCacheMode

* fix label blur when using dark font color (#3949)

* optimize editBox style (#3952)

* To adapt the adjust of the webview impl in the jsb (#3697) (#3951)

* fix the problem of label that first modified is invalid. (#3959)

* Fix create ArmatureDisplay by code but no set asset, then invoke some api about event, will throw error (#3966)

* fix get auido state bug (#3974)

* small fixed

* small fixed
minggo pushed a commit that referenced this pull request Feb 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants