1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-19 22:53:53 +00:00
Commit graph

100 commits

Author SHA1 Message Date
Alexei Kotov
9a43ca2d00 Move NiGeometry triangulation to NiGeometry 2023-11-24 23:39:49 +03:00
Alexei Kotov
981e482171 Read BSSubIndexTriShape
It's currently handled exactly like BSTriShape, which works ok enough for our purposes
2023-10-20 17:02:46 +03:00
Alexei Kotov
b4f81fb4fa Fix formatting 2023-10-04 15:54:28 +03:00
Alexei Kotov
8fb900da85 Remove GeometryInterface
Actually, it was a terrible idea
2023-10-04 15:54:28 +03:00
Alexei Kotov
052fb416c6 Read BSSegmentedTriShape 2023-09-25 14:48:40 +03:00
Alexei Kotov
30b842dd1e Read BSMeshLODTriShape and BSDynamicTriShape
Slightly clean up BSVertexData loading
Fix skin tint alpha loading in BSLightingShaderProperty
2023-09-20 05:06:38 +03:00
Alexei Kotov
1b93e646b8 Rename Property->NiProperty 2023-09-18 06:44:44 +03:00
Alexei Kotov
18e4af04b3 Rewrite BSVertexData loading and read FO4 geometry properly 2023-09-17 20:15:30 +03:00
Alexei Kotov
eb8242946a Improve node record consistency with NifTools 2023-09-16 19:17:40 +03:00
Alexei Kotov
bff9231c3b Refactor NiGeometry/BSTriShape
Don't pass invalid geometry data links to the loaders
2023-09-16 19:17:40 +03:00
Alexei Kotov
deb051639e Refactor NiBoundingVolume 2023-09-15 21:11:12 +03:00
Alexei Kotov
5b0bc97db0 Refactor NiSwitchNode and NiLODNode 2023-09-15 21:11:12 +03:00
Alexei Kotov
c9300cac31 Update NIF node records, first pass 2023-09-15 21:11:09 +03:00
Alexei Kotov
4dd2f34e30 Fix Windows build 2023-09-10 09:20:06 +03:00
Alexei Kotov
a7cc4e6ba6 Rename Node->NiAVObject and update everything directly related
Update NiNode
Simplify RootCollisionNode handling in BulletNifLoader
2023-09-10 07:18:39 +03:00
Alexei Kotov
6872c7144e Rename Transformation->NiTransform and update everything directly related 2023-09-10 07:18:39 +03:00
Alexei Kotov
ef896faa90 Rename Named->NiObjectNET and update everything directly related to it
BulletNifLoader: properly check if the node has animation controllers
Flatten extra data linked list
2023-09-10 07:18:39 +03:00
Alexei Kotov
fd3b24e2e6 Make better use of osg::BoundingSpheref in the NIF loader 2023-09-06 23:55:36 +03:00
Alexei Kotov
e7bbfed1fd Read BSTriShape bounds into array 2023-08-17 09:15:45 +03:00
psi29a
c290754077 Revert "Merge branch 'loadSSEAlchemyTable' into 'master'"
This reverts merge request !3267
2023-08-03 19:55:06 +00:00
alekulyn
d2896945e8 Load SSE alchemy table 2023-07-28 07:46:20 +00:00
Alexei Kotov
4265524ad5 Read BSRangeNode and BSBlastNode 2023-07-20 04:04:49 +03:00
alekulyn
7ea2ea96b6 Read new nodes pt1 2023-07-10 17:27:05 -05:00
alekulyn
74aa7b947a Load BSTriShape NIF nodes 2023-07-09 10:14:27 +00:00
Alexei Dobrohotov
1b5e904285 Read BSMultiBound et al. 2023-05-22 23:05:10 +03:00
Alexei Dobrohotov
3e8a9d1de4 Read BSTreeNode, handle as NiNode 2023-05-21 18:16:06 +03:00
Alexei Kotov
41d6ccd3f6 Read NiDefaultAVObjectPalette 2023-02-08 15:08:52 +03:00
elsid
f2fb3d6de8
Separate NIFFileReader from NIFFile
NIFFile might not always be created from a file or stream containing NIF data.
Basically there are 2 different responsibilities for this class:
1. Read NIF file
2. Provide input for nifosg and bulletnifloader.

Remove no longer needed NIFFileMock since the state of NIFFfile can be
initialized independently from reading NIF file.
2022-09-24 19:10:14 +02:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
Alexei Kotov
126090bdc5 Load NiBillboardNode mode field 2022-08-31 22:32:45 +03:00
Andrei Kortunov
c36c28e8f9 Move NIF implementation to cpp files 2022-07-21 15:54:52 +04:00
elsid
bef15edf0b
Remove redundant ostream, istream, iostream and sstream includes
* Replace by std::to_string and operator+ where possible.
* Move the code requiring to include <sstream> from .hpp to .cpp files.
2022-07-05 01:41:28 +02:00
Alexei Kotov
e673f9fa76 Clean up NIF flags 2022-06-22 01:58:16 +03:00
Alexei Kotov
e6f7a2f1ef Correct NiBoundingVolume loading 2022-06-17 14:35:33 +03:00
cody glassman
72fdf40e06 better support for particle arrays when spawning at node positions 2022-05-15 13:41:52 -07:00
Wolfgang Lieff
373776170d refactor for NiFltAnimationNode 2022-04-07 00:49:08 +02:00
Bret Curtis
0db5415976 refactor to use mInternal, support Flag_Reverse and updated changelog/authors.md 2022-04-07 00:09:11 +02:00
Wolfgang Lieff
ead73fce31 initial NiFltAnimationNode support 2022-04-07 00:09:11 +02:00
Alexei Dobrohotov
76ba5025e3 Clarify root node transformation discard 2022-02-19 00:39:02 +03:00
Alexei Dobrohotov
85053941b3 Properly postprocess NiSortAdjustNode 2022-02-09 13:55:32 +03:00
glassmancody.info
88f02913d5 use vertex emitters on array particle controllers when appropriate 2022-02-07 19:46:42 -08:00
elsid
3f14011087
Support multiple parents for NIF nodes
Choose a parent base on which node is used to iterate over children nodes.
This leads to duplicate handing of child nodes. A node will be handled so many
times how many parents it has.

For example:
p1 p2
 \ /
  c

Will be handled as:
p1 p2
|  |
c  c

If c has children they will be handled X times c is handled.
2022-01-22 01:02:31 +01:00
Alexei Dobrohotov
63ea57e9cf Load NiSortAdjustNode and NiAccumulators 2021-11-14 00:31:49 +03:00
Alexei Dobrohotov
5571099147 Load NiCollisionObject and bhkCollisionObject 2021-11-10 19:31:28 +03:00
Andrei Kortunov
33648313a6 Initialize variables 2021-01-09 14:21:57 +04:00
Alexei Dobrohotov
1e6156e04a Turn all NIF records into structs 2020-12-16 01:54:31 +03:00
Alexei Dobrohotov
c0b9823372 Read BSShaderProperty and handle NiGeometry properties 2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
42226533d8 Handle BSLODTriShape
Its levels of detail are currently not handled
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
8fd45d85ec Unify NiGeometry/NiGeometryData handling 2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
db9c174ca8 Make NIF particle node handling more generic 2020-11-30 12:33:18 +03:00