Kim Kulling
a6808b868c
Small code cleanup
2022-02-22 21:07:23 +01:00
Jaroslav Přibyl
480d6fee2a
cleanup
2022-02-22 01:46:47 +01:00
Jaroslav Přibyl
62c9347985
fixed obj parsing with cstype
2022-02-22 01:32:41 +01:00
Kim Kulling
52b106bf7e
Merge branch 'master' into master
2022-02-20 19:04:32 +01:00
youkeyao
ad766cb738
update the calculation and orthogonalization for bitangent
2022-02-20 17:15:11 +08:00
Terence Russell
17123ed4a1
Add support for bump -bm (bump/normal multiplier)
2022-02-17 22:10:46 -07:00
Jean-Christophe Fillion-Robin
33a48c6ca6
cmake: Fix assimp target install rule fully specifying component
...
This commit ensures generated install rules for the assimp target are
all consistently associated with components named after LIBASSIMP_COMPONENT
or LIBASSIMP-DEV_COMPONENT CMake variables.
It streamlines the packaging of specific components of assimp in client
projects leveraging the CPACK_INSTALL_CMAKE_PROJECTS variable.
Failing to do so leads to "/path/to/assimp-build/code/cmake_install.cmake"
file having install rules associated with a component called "Unspecified".
See https://cmake.org/cmake/help/v3.10/command/install.html#installing-targets
and https://cmake.org/cmake/help/v3.22/module/CPack.html#variable:CPACK_INSTALL_CMAKE_PROJECTS
2022-02-17 05:47:34 -05:00
Kim Kulling
9bf5d01469
Fix invalid initialization of constexpr.
2022-02-16 21:22:35 +01:00
Kim Kulling
9e23d771bc
Fix invalid initialization of constexpr.
2022-02-16 21:19:17 +01:00
Kim Kulling
76a7614c4b
Adapt ai_epsilon to code
2022-02-16 20:07:27 +01:00
Kim Kulling
067c5d9ec4
Refactoring: add usage of ai_epsilon to fbx.
2022-02-16 00:17:26 +01:00
Kim Kulling
5d8e5fd130
Update XFileParser.cpp
...
Fix typo
2022-02-15 16:10:33 +01:00
Kim Kulling
7c13b16d30
Add missing flush modes supported by zlib
2022-02-14 20:51:06 +01:00
Kim Kulling
416f823866
Merge branch 'kimkulling/introduce_compression' of https://github.com/assimp/assimp into kimkulling/introduce_compression
2022-02-14 20:25:27 +01:00
Kim Kulling
c718500c55
Fix last review findings and finish windows bits
2022-02-14 20:25:18 +01:00
Kim Kulling
9a585d7b3c
Merge branch 'master' into kimkulling/introduce_compression
2022-02-13 19:58:22 +01:00
Kim Kulling
52b6c4f7c0
Fix broken importer and add some review findings2
2022-02-13 18:44:22 +01:00
Kim Kulling
3e09d462fa
Fix compression for fbx
2022-02-12 09:25:45 +01:00
Kim Kulling
23b43d1825
Fix X-Importer decompress algorithm
2022-02-08 21:43:14 +01:00
Kim Kulling
27bcddfb1a
Migrate more importers to compression class
2022-02-08 20:43:47 +01:00
Tomas Maly
acf73659d8
fix missing include for size_t
2022-02-08 00:08:46 +01:00
Kim Kulling
ce61ea56a5
Merge branch 'master' into kimkulling/introduce_compression
2022-02-07 10:02:51 +01:00
Kim Kulling
9a15ca1007
LWO: validate enum value before parsing it
...
- Check for valid enum values
- closes https://github.com/assimp/assimp/issues/4236
2022-02-07 09:08:23 +01:00
Kim Kulling
eb5a7938e0
Remove dead code
2022-02-06 21:16:04 +01:00
Kim Kulling
9335cc30ab
INtroduce compression class to encapsulate compression via zlib
2022-02-06 20:42:58 +01:00
Kim Kulling
f217bd4b5f
Update HMPLoader.cpp
2022-01-26 19:42:09 +01:00
Kim Kulling
305d1f45aa
Add some constants and fix compile
2022-01-26 19:36:38 +01:00
Kim Kulling
50b00d33b5
HMP: Fix override during copying position data
...
- Fix override
- closes https://github.com/assimp/assimp/issues/4235
2022-01-26 19:22:52 +01:00
Kim Kulling
06fffb4f83
ASE: Fix warning unreachable code
2022-01-24 20:05:25 +01:00
Kim Kulling
91737f1cc9
Fix copyright: last year
2022-01-23 21:18:31 +01:00
Ben Sewell
3e6fc3a64b
Merge remote-tracking branch 'origin/master' into bensewell-fixifcopening4343
2022-01-20 09:43:45 +00:00
Kim Kulling
c1968823ad
ASE: Fix material parsing
...
- Fuzzer error found when material access get's an out-of-bound access.
- Break parsing when material index gets out of range.
- closes https://github.com/assimp/assimp/issues/4232
2022-01-20 10:25:52 +01:00
Kim Kulling
cbc4459dda
Fix compile error: missing var
2022-01-19 22:03:11 +01:00
Kim Kulling
43763f53d6
Fix compile error: missing var
2022-01-19 22:00:53 +01:00
Kim Kulling
15b08f643a
Fix warning: unused variable
2022-01-19 21:55:24 +01:00
Kim Kulling
17d5633a5b
Add missing SImpleExtensionCheck
2022-01-19 21:42:14 +01:00
Kim Kulling
4cb76e6a18
Update UnrealLoader.cpp
2022-01-18 22:29:55 +01:00
Kim Kulling
12b01dd575
Update SMDLoader.cpp
2022-01-18 22:28:54 +01:00
Kim Kulling
7b24437f06
Update SIBImporter.cpp
2022-01-18 22:27:19 +01:00
Kim Kulling
ec63fe74ee
Update RawLoader.cpp
2022-01-18 22:26:16 +01:00
Kim Kulling
088658b359
Update Q3BSPFileImporter.cpp
2022-01-18 22:25:43 +01:00
Kim Kulling
b4dee9220d
Update Q3BSPFileImporter.cpp
2022-01-18 22:25:22 +01:00
Kim Kulling
ffc13f18ba
NFF: reenable canRead
2022-01-18 22:24:11 +01:00
Kim Kulling
331cb5ac72
Update M3DImporter.cpp
2022-01-18 22:23:01 +01:00
Kim Kulling
c3b91dd766
C4D. Fix merge conflicts
2022-01-18 22:21:58 +01:00
Kim Kulling
ea5996307a
Update B3DImporter.cpp
2022-01-18 22:20:37 +01:00
Kim Kulling
efd1d36aa9
Merge branch 'master' into krishty-new-file-detection
2022-01-18 22:17:50 +01:00
Kim Kulling
959af1ac4d
Revert change
2022-01-18 21:37:49 +01:00
Kim Kulling
7350baea93
Revert change
2022-01-18 21:36:55 +01:00
Kim Kulling
cf47411742
Revert change
2022-01-18 21:36:02 +01:00
Kim Kulling
1e80630d5d
Revert change.
2022-01-18 21:35:09 +01:00
Kim Kulling
037732c429
Revert change
2022-01-18 21:34:18 +01:00
Kim Kulling
cff213d4dd
Revert change
2022-01-18 21:33:05 +01:00
Kim Kulling
9d0006fecb
Revert change
2022-01-18 21:32:06 +01:00
Kim Kulling
5af79cac1d
Fix unittests + small refactorings
2022-01-18 21:23:43 +01:00
Jeremy Sigrist
59f28e168e
Merge branch 'master' into jere9309/read_collada_materials
2022-01-18 09:55:33 -08:00
Kim Kulling
6e50b04ae0
Merge branch 'master' into IQM
2022-01-17 18:33:37 +01:00
Kim Kulling
f16e4fadc7
Merge branch 'master' into patch-1
2022-01-17 18:18:16 +01:00
Ben Sewell
415b0e19d9
Changes for gcc compatibility
2022-01-17 16:39:50 +00:00
Ben Sewell
65f2353105
IFC Reading: Fix opening reading.
2022-01-17 15:49:11 +00:00
Kim Kulling
cbde086bfb
Merge branch 'krishty-new-file-detection' of https://github.com/assimp/assimp into krishty-new-file-detection
2022-01-16 20:58:07 +01:00
Kim Kulling
acd70b35a0
Fix merge issues
2022-01-16 20:57:56 +01:00
Kim Kulling
6ad7505376
Merge branch 'master' into krishty-new-file-detection
2022-01-16 20:43:57 +01:00
Kim Kulling
05746acb07
Merge branch 'new-file-detection' of https://github.com/krishty/assimp into krishty-new-file-detection
2022-01-16 20:41:24 +01:00
Viktor Kovacs
c8ab39dd04
Merge branch 'master' into common_base64
2022-01-15 23:42:56 +01:00
Kim Kulling
d3e24196c0
Merge branch 'master' into so-unloading
2022-01-13 20:19:23 +01:00
Jeremy Sigrist
5aac72791d
Merge branch 'master' into jere9309/read_collada_materials
2022-01-12 10:12:58 -08:00
Jeremy Sigrist
e671d087e1
Collada: Read all instance_material child nodes
2022-01-12 09:52:12 -08:00
Viktor Kovacs
c71f4bc95a
Merge branch 'master' into common_base64
2022-01-11 18:46:08 +01:00
tanolino
f8abb015de
Merge branch 'master' into patch-1
2022-01-11 09:55:19 +01:00
Kim Kulling
d68224f2ed
Merge branch 'master' into patch-1
2022-01-10 23:45:03 +01:00
Kim Kulling
f63b10bf45
OpenGEX: Fix usage of texture specular token
2022-01-10 21:22:44 +01:00
Viktor Kovacs
6b9732721a
Merge branch 'assimp:master' into common_base64
2022-01-10 21:15:31 +01:00
Kim Kulling
50c7301a38
Update copyrights
2022-01-10 21:13:43 +01:00
Ben Wolsieffer
629c8850ec
Fix imported target include directory
...
Fix the imported target include directory when the headers are not installed in '${CMAKE_INSTALL_PREFIX}/include'.
2022-01-09 20:59:14 -05:00
Kim Kulling
8cb5ab69b0
Merge branch 'master' into fix-bone-fit-check
2022-01-08 11:35:59 +01:00
Kim Kulling
776130534b
Fix nullptr-dereferencing
...
- Fix a possible nullptr-exception.
2022-01-06 22:35:32 +01:00
Alex Rebert
b14b34d2b8
LWSLoader: Fix out of bounds iterator access
...
Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=38947
Fix #4222
2022-01-05 15:43:16 -05:00
Alex Rebert
310c81aaa2
Add support for spanned archives
...
Without it, assimp would crash on some inputs by jumping to a NULL
opendisk function. This commit adds an opendisk implementation, which
required adding a filename member to ZipFile.
Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=38873
Fix #4229
2022-01-05 15:43:10 -05:00
Alex Rebert
34d8fba100
Fix stack overflow in ZipArchiveIOSystem::MapArchive
...
The function allocates a filename buffer of 256, and copies the filename
extracted from the zip file into it. However, a filename might be larger
than 256 characters, in which case the function would write out of bounds.
This commit skips any file whose name is larger than 256 to avoid the
overflow.
Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=38870
Fix #4228
2022-01-05 10:01:46 -05:00
tanolino
089fc7311a
GCC might have an issue with value type Errors
2022-01-05 10:34:27 +01:00
tanolino
04d2d13172
Locale independent meter scale
...
`XmlParser::getRealAttribute(...)` will call `strtod` (or `wcstod`) which are both locale dependent. So on a German locale system a scale of 0.01 meter will be parsed to 0. In order to avoid that I use the `fast_atoreal_move<ai_real>()` method.
2022-01-05 10:10:38 +01:00
Colin Reeder
87e9dbac40
Fix bone fitted check in gltf2 exporter
2022-01-03 16:32:34 -07:00
kovacsv
125acf9ec8
Merge remote-tracking branch 'origin/master' into common_base64
2022-01-02 19:47:57 +01:00
kovacsv
bbe12240ca
Move Base64 encode/decode functionality to the common folder.
2022-01-02 19:47:43 +01:00
Kim Kulling
ab19cff328
Merge branch 'master' into pbr-obj
2021-12-31 08:33:30 +01:00
Kim Kulling
a86ab45161
Merge branch 'master' into ps-devel-fix-namespace-001
2021-12-31 08:20:24 +01:00
Peter Seiderer
a099fe7cd3
BlenderScene: use explicit namespace instead of using namespace
...
Fixes (using g++ Sourcery CodeBench Lite 2014.05-29 - 4.8.3 20140320):
.../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:101:33: error: specialization of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' in different namespace [-fpermissive]
const FileDatabase &db) const {
^
In file included from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.h:49:0,
from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:47:
.../build/assimp-5.1.4/code/AssetLib/Blender/BlenderDNA.h:266:10: error: from definition of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' [-fpermissive]
void Convert(T &dest, const FileDatabase &db) const;
^
.../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:121:33: error: specialization of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' in different namespace [-fpermissive]
const FileDatabase &db) const {
^
In file included from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.h:49:0,
from .../build/assimp-5.1.4/code/AssetLib/Blender/BlenderScene.cpp:47:
.../build/assimp-5.1.4/code/AssetLib/Blender/BlenderDNA.h:266:10: error: from definition of 'template<class T> void Assimp::Blender::Structure::Convert(T&, const Assimp::Blender::FileDatabase&) const' [-fpermissive]
void Convert(T &dest, const FileDatabase &db) const;
^
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
2021-12-30 18:01:54 +01:00
Kim Kulling
0a5bd792de
Merge branch 'master' into fix-fbx-metalness-import
2021-12-29 19:08:16 +01:00
Jérôme Leclercq
81fc50f612
CMake: Replace CMAKE_COMPILER_IS_MINGW by MINGW
...
See https://discourse.cmake.org/t/cmake-compiler-is-mingw-removed/4539 and https://cmake.org/cmake/help/latest/variable/MINGW.html
2021-12-28 15:58:37 +01:00
Vyacheslav Vanin
2da06dd41a
Merge branch 'master' into fix-fbx-metalness-import
2021-12-26 17:31:33 +03:00
Kim Kulling
d44641398f
Add console progresshandler
2021-12-26 11:16:02 +01:00
Garux
d11d2fc60d
fix Inter-Quake Model (IQM) Importer MSVC warnings
2021-12-24 18:36:25 +03:00
Kim Kulling
db2500c393
MDL: Do not try to copy empty embedded texture
...
- When an embedded texture is empty, skip it instead of trying to copy it. This must fail.
- closes https://github.com/assimp/assimp/issues/4238
- Found from the Google fuzzer.
2021-12-23 12:28:43 +01:00
Kim Kulling
635153b3a4
LWS-Import: Avoid access to empty string token
...
- Fix invalid access to string pointer when string token is empty
- closes https://github.com/assimp/assimp/issues/4222
2021-12-22 21:08:28 +01:00
Kim Kulling
2c66d4d3a2
Optimize the check
2021-12-22 20:43:44 +01:00
Kim Kulling
215f4e1f4d
Fix typo
2021-12-22 20:02:29 +01:00
Kim Kulling
2eb86d75b8
Make sure no overflow can happen
...
- During UTF32 LE with BOM make sure that the byteswap operation will have enough space when iterating through the text buffer, which shall get encoded.
- closes https://github.com/assimp/assimp/issues/4230
2021-12-22 19:45:19 +01:00
Rene Sepulveda
19371af6e6
Support PBR properties/maps in Obj importer
2021-12-20 13:43:46 -05:00
Kim Kulling
cab7b330ee
Merge branch 'master' into so-unloading
2021-12-20 17:58:18 +01:00
Garux
46f618a6ef
add Inter-Quake Model (IQM) Importer
2021-12-18 15:34:58 +03:00
sssaoi
d7bf8d6e07
Fix compile error when ASSIMP_BUILD_NO_X3D_IMPORTER is define.
2021-12-18 14:50:22 +09:00
Vyacheslav Vanin
53968550e4
Merge branch 'master' into fix-fbx-metalness-import
2021-12-17 12:08:55 +03:00
Kim Kulling
3e97329fa1
Merge branch 'master' into cmake_no_known_features_error_fix
2021-12-16 20:27:58 +01:00
Kim Kulling
efdaf603b0
Merge branch 'master' into so-unloading
2021-12-16 14:52:58 +01:00
Vyacheslav.Vanin
1afe7e6255
fix fbx import metalness
...
Can't import metalness textures in fbx importer
2021-12-16 12:09:06 +03:00
Kim Kulling
26dc168449
Merge branch 'master' into bugfix/import-crashes
2021-12-15 07:54:48 +01:00
rumgot
92aef9236f
Fixed cmake error: No known features for C compiler when using the assimp library from another project.
2021-12-14 23:54:36 +03:00
Kim Kulling
003942aafe
Merge branch 'master' into copyscene_fix
2021-12-13 21:19:08 +01:00
Viktor Kovacs
d619f7015a
Merge branch 'master' into copyscene_fix
2021-12-13 20:08:45 +01:00
Kim Kulling
cb657e4c13
Use correct XmlParser-methods and add some missing casts
2021-12-13 18:06:23 +01:00
Kim Kulling
54e60b031e
Merge branch 'master' into master
2021-12-12 21:12:37 +01:00
Viktor Kovacs
4959924dab
Merge branch 'master' into copyscene_fix
2021-12-10 20:10:25 +01:00
Kim Kulling
33c6762272
Update HMPLoader.cpp
...
- Fix possible division by zero
- closes https://github.com/assimp/assimp/issues/4235
2021-12-10 14:32:45 +01:00
Kim Kulling
68682d75b5
Fix nullptr dereferencing from std::shared_ptr
...
- Finding from fuzzer
- closes https://github.com/assimp/assimp/issues/4237
2021-12-10 08:39:21 +01:00
Inho Lee
c2297e9199
Revert "FBXConverter : Fix timescales of FBX animations"
...
The previous patch was made by misunderstanding about mTime.
It is not real time value, but time ticks.
This reverts commit b8bf1eac04
.
2021-12-09 10:57:39 +01:00
Viktor Kovacs
d2c8cb755e
Merge branch 'master' into copyscene_fix
2021-12-08 14:29:31 +01:00
Kim Kulling
e51feac2c5
Update PolyTools.h
2021-12-07 21:19:01 +01:00
Kim Kulling
1e4861f86e
Fix division by zero in PointInTriangle2D
...
- closes https://github.com/assimp/assimp/issues/4240
2021-12-07 20:45:21 +01:00
kovacsv
2be6bac4b0
Bug: Export crashes when any of the meshes contains texture coordinate names #4243
2021-12-07 20:42:43 +01:00
IOhannes m zmölnig
9a7ee0ac14
Throw a DeadlyImportError rather than an assertion if all materials are redundant and thus removed
...
Closes: https://github.com/assimp/assimp/issues/4224
Closes: https://github.com/assimp/assimp/issues/4225
2021-12-07 12:35:15 +01:00
IOhannes m zmölnig
6e090c88b8
fix index variable for surfaces
...
Closes: https://github.com/assimp/assimp/issues/4209
2021-12-07 12:13:31 +01:00
Kim Kulling
5b4829155c
Merge branch 'master' into so-unloading
2021-12-04 20:28:12 +01:00
IOhannes m zmölnig
0e2ac2a91c
X3D: simplistic attempt to avoid crashes due to nullptr access
...
Related: https://github.com/assimp/assimp/issues/4201
while the crashes go away, i'm not sure whether this is the correct fix.
also, afaict the X3D importer produces wrong results anyhow
2021-12-01 12:21:29 +01:00
IOhannes m zmölnig
c8cdf3009e
X3D: replace 'here' debugging printout by an assertion.
...
if mNodeElementCur is NULL, we get a crash anyhow...
2021-12-01 12:19:19 +01:00
IOhannes m zmölnig
23d7811276
X3D: consistent initialization with nullptr
2021-12-01 11:35:06 +01:00
IOhannes m zmölnig
836963428e
Fix file-extension check for X3D-files
...
using the pre-existing and well-tested GetExtension() (which happens
to also normalize the extension), rather than attempting our own
buggy one...
Closes: https://github.com/assimp/assimp/issues/4177
2021-12-01 11:17:42 +01:00
Kim Kulling
834ec20008
Merge branch 'master' into master
2021-11-30 23:44:42 +01:00
Kim Kulling
d6f3f292f2
Merge branch 'master' into ms-maxvollmer/crashfixes2
2021-11-30 23:17:59 +01:00
Inho Lee
4a37aa2ef8
Interpolate euler rotations for quaternion animations
...
FBX uses euler rotation but assimp library's base type is
quaternion. When assimp convert FBX some animation information
can be lost.
This patch interpolates euler-angle rotations and insert
additional keyframes for the FBX format.
2021-11-30 12:49:59 +01:00
Pencil Amazing
095bd67e10
Fix memory leaks in CollectionObject by making ob a weak pointer and removing prev pointer.
...
Something was cyclic in CollectionObject and we don't traverse backwards anyways
2021-11-26 22:09:06 -04:00
Pencil Amazing
e831ecf3c2
Add a separate test case for Blender 276 and update Box.blend to be 293
2021-11-26 22:09:06 -04:00
Pencil Amazing
44fa1ec6a7
Make Blender importer aware of collections, and use them when available. Also add the default startup file for Blender 2.93
2021-11-26 22:09:06 -04:00
Max Vollmer (Microsoft Havok)
0015823bef
Reject files with an invalid byteLength value
2021-11-26 13:01:15 +00:00
Max Vollmer (Microsoft Havok)
38382715f7
Ensure we don't access the vector with an out of bounds index
2021-11-26 13:01:00 +00:00
Jan Krassnigg
1a5d66714f
Prevent out-of-range memory writes by sparse accessors
...
This turned up during fuzz testing. Corrupted data would make assimp write to random memory locations, leading to subsequent crashes.
2021-11-25 11:20:26 +01:00
Kim Kulling
690e558b88
Update IOSystem.cpp
2021-11-25 09:32:52 +01:00
Thomas Nicky Thulesen
8b78a63b50
Allow dlclose of so library by avoiding unique symbols.
2021-11-23 20:39:48 +01:00
ruyo
60bfde78eb
Fixed an incorrect indeiciesType in the glTF2 sparse accessor.
2021-11-21 23:23:22 +09:00
Kim Kulling
9ebd74bd26
Merge branch 'master' into win_dll_so_version
2021-11-20 14:16:32 +01:00
Kim Kulling
0d857bcf9f
Merge branch 'master' into deprecated_gltfpbr_macros
2021-11-20 12:35:56 +01:00
Ralf Habacker
2ceb18746b
Append '-SOVERSION' to DLL base file name for mingw builds to match common style
2021-11-18 08:17:31 +01:00
RichardTea
74b3be194d
Read the Value, not the Attribute
...
Correct some mistakes made when moving to pugixml from IrrXML
Fixes #4179
2021-11-17 17:10:10 +00:00
RichardTea
bab8b8dbab
apply clangformat
2021-11-17 17:08:19 +00:00
RichardTea
c24f99cd0e
Redefine deprecated glTF-specific PBR material macros
...
Intended to support Qt5 QtQuick3D until it is ported to generic PBR
macros.
2021-11-16 11:42:59 +00:00
Jérémie Dumas
b0d564467e
Merge branch 'master' into jdumas/ziplib
2021-11-14 08:25:59 -08:00
Jérémie Dumas
78d72bff59
Fix 3MF presence test.
2021-11-14 08:24:27 -08:00
Kim Kulling
b1c336799c
Merge branch 'master' into master
2021-11-13 09:16:27 +01:00
Kim Kulling
c3ac5569c5
Merge branch 'master' into jdumas/ziplib
2021-11-13 08:46:46 +01:00
freizhang
b9937994ca
Fix glTF2 skinning bone weight exporting issue
2021-11-13 12:07:29 +08:00