Commit Graph

111 Commits

Author SHA1 Message Date
RH 2c0f04c99b Support custom texture atlas formats (#284)
* Allow support for custom texture atlas formats other than PLIST.

* Revert usage of emplace_back to push_back to ensure support for older compilers.

* Update test to support SpriteFrameCache::addSpriteFramesWithFile

* Re-add SpriteFrameCache::addSpriteFramesWithFileContent

* Change order of SpriteFramesFromFileContent test back to what it previously was

* Remove sprite sheet and all frames associated with it correctly

* Move sprite loader classes into their own files to clean up CCSpriteFrameCache

* Remove redundant line and update comment

* Fix formatting to match adxe code style

* Fix typo

* Add custom sprite sheet loader test using JSON-array sprite atlas format.
Simplify sprite sheet loader interface by adding identifier to the custom sprite sheet loader implementation.

* Add newline at the end of the file
2021-08-13 14:52:58 +08:00
halx99 d8ad4ab8db Update comment 2021-07-15 17:32:50 +08:00
halx99 36042fdb55 Add new API Node::hitTest 2021-07-15 17:01:57 +08:00
halx99 1699dcc93d Use const ValueMap& for CCParticleSystem init functions 2021-07-15 12:23:50 +08:00
halx99 f9ecb53623 Fix member not initialized [skip ci] 2021-07-07 22:38:58 +08:00
halx99 7d635e2a37 Improve Sprite programState update logic 2021-06-27 21:43:21 +08:00
halx99 10c1ed15ef Refactor dual sampler shader [ci build]
Since not only etc1 could use sepreate RGB, A to two texture samplers, we unify the shader name.
2021-06-27 20:58:50 +08:00
halx99 72d1ba9ea6 Merge: df58dd753c 2397d54daf
Merge branch 'dev' into Chipmunk2D
2021-06-24 17:04:04 +08:00
aismann dbcb5816fe Add springs (draw), add Copyright, improve Chipmunk2d - Testbed 2021-06-24 09:54:02 +02:00
halx99 f4871674df More compatible 2021-06-24 10:21:41 +08:00
halx99 36d258f589 Delay scene default camera init, see also #392
This change will make sure user can change window or design size before scene init
2021-06-24 02:23:02 +08:00
halx99 3c9a18675c Add some comment for pr #384 2021-06-17 21:56:38 +08:00
RH 7d8fe551cc Use TTF scaled metrics to calculate line height (#384) 2021-06-17 21:15:50 +08:00
RH 621a6a16f5 Set global Z value of label debug layer to be the same as the parent label to fix display issue (#378) 2021-06-16 09:18:43 +08:00
halx99 382a12f181 Improve progress timer (#375) 2021-06-13 10:05:30 +08:00
RH 429215ee85 Ensure label underline node has the same global Z value as the label node to fix visibility issue when global Z is not 0. (#373) 2021-06-09 12:09:01 +08:00
RH 56fc4513ef FileStream::size() implemented (#365)
* Add FileStream::size()
Add ZipFile::zfsize()

* Use FileStream::size()
2021-05-31 15:08:44 +08:00
halx99 6ff9a28f78 Better code style 2021-05-24 13:26:56 +08:00
halx99 8e6faac1f1 Merge: 3348f10813 3a7bb58045
Merge pull request #350 from rh101/fix-cmake-set-property

Fix for CMake error when set_property is called with aliased target
2021-05-05 19:49:30 +08:00
rh101 c3618f8ea6 Extract real target from ALIAS if it exists in order to set property successfully
Remove duplicate entries in dependencies lists
2021-05-05 16:04:06 +10:00
halx99 0511520281 Merge: 7f1ca55a97 1efe0091a8
Merge pull request #347 from rh101/imgui-fix

ImGUI font crash fix when using virtual file system
2021-04-27 23:29:22 -07:00
rh101 e5fa398c67 Load fonts into IMGUI using memory routines rather than allowing it to use its own file handling in order to support FileStream related implementations. 2021-04-28 15:53:37 +10:00
rh101 0583f9a4e0 Get the raw pointer on creation of the FileStream to avoid any accidental usage of the unique_ptr. 2021-04-26 17:31:34 +10:00
rh101 668e96cadd Use unique_ptr for FileUtils::openFileStream
Fix OGG audio playback due to incorrect tell() method
Fix unzip close() override method not deleting FileStream pointer.
2021-04-26 14:21:56 +10:00
RH 5b168e3bb6 Merge: 03bb24f313 85c5705f48
Merge branch 'vfs-support' into master
2021-04-26 10:39:09 +10:00
RH 0e2247a2d9 Merge: d1027ab263 ce6117fa65
Merge pull request #7 from c4games/master

Sync with primary
2021-04-26 10:32:25 +10:00
rh101 833f27f499 Ensure code uses FileStream::tell() to get size if required after using FileStream::seek(0, SET_END) 2021-04-26 10:28:33 +10:00
rh101 155fe98406 openFileStream now returns a nullptr if it fails 2021-04-24 09:22:27 +10:00
rh101 e1ce966be2 Remove redundant std::move 2021-04-23 22:00:33 +10:00
rh101 95cf5b5c2b Merge: 2aa2d69151 b7506fed0c
Merge branch 'vfs-support' of https://github.com/rh101/engine-x into vfs-support
2021-04-23 00:01:47 +10:00
rh101 54ffa13dff Move PosixFileStream class to its own files
Update UserDefault to work with FileStream
Fix undefined openFileStream on platforms other than Win32
2021-04-23 00:01:32 +10:00
RH dd5f77c3d5 Merge: 15c8f2298d 0886473e1b
Merge pull request #4 from rh101/master

Sync with master
2021-04-22 21:49:43 +10:00
RH 1e15ed4839 Merge: 2cef9f2e76 844119d162
Merge pull request #3 from c4games/master

Sync with master
2021-04-22 21:48:49 +10:00
rh101 7540c06fd3 Use FileStream to write JPG images to disk 2021-04-22 21:36:26 +10:00
halx99 8ed6d34234 Explicit set cmake minimum version at app/build.gradle [ci build] 2021-04-22 11:40:53 +08:00
rh101 2bf12b2226 Add support for virtual file system via custom FileStream and FileUtils implementations. 2021-04-22 03:15:49 +10:00
halx99 fce0f9caf0 Refine director access [ci build] 2021-02-05 23:09:14 +08:00
halx99 472266c25c Fix #318 2021-01-27 12:03:42 +08:00
halx99 be79c908c5 Fix ParticleBatchNode texture not bind [ci build] 2021-01-19 23:53:22 +08:00
halx99 1ec908d4f9 fix #260 [ci build] 2020-11-16 12:21:27 +08:00
halx99 60a6d97d86 Remove Sprite::updateShaders [ci build] 2020-10-31 20:08:32 +08:00
halx99 a2fcdb67a1 Sprite::setTexture, programType >= ProgramType::HSV needs update by user manually. 2020-10-27 11:14:36 +08:00
halx99 8a8d96e8d4 Refine DrawNode, should not use Node::_programState for private use (#251)
The follow classes should not reuse Node::_programState, otherwise needs override Node::setProgramState to update programState of pipelineDescriptor:
- DrawNode
- LayerColor
- LayerRadialGradient
- ParticleBatchNode
- ParticleSystemQuad
2020-10-26 14:49:14 +08:00
halx99 e58041bd46 Don't update sprite shader when it's not default 2020-10-26 13:08:02 +08:00
halx99 567f55d6fb fix clear flow for rendertexture and grid since we use clearCommand to clear renderTarget, see #233 2020-10-16 16:25:10 +08:00
halx99 c594e3789c Refactor programState management (#236)
1. Add custom program registery
2. Re-enable batch draw for custom program
2020-10-16 16:23:14 +08:00
halx99 880c274995 fix #233 2020-10-15 10:22:18 +08:00
halx99 11ffba3758 API qualifiers improments 2020-10-07 00:07:53 +08:00
halx99 5ef9214d19 fix warning 2020-10-06 12:31:17 +08:00
halx99 2b6cb88167 Clearly texture usage and TextureGL initWithZeros usage (#219)
* Clearly texture usage and TextureGL initWithZeros usage

* More properly function name
2020-09-25 15:04:55 +08:00