Commit Graph

16 Commits

Author SHA1 Message Date
Richard TalbotWatkin
1cd94f81c3 Added StaticMeshDescription module for defining attributes and operations required in editor and at runtime for MeshDescriptions for static meshes.
Provided a path for building MeshDescriptions for static meshes at runtime, and supporting API.
Clarified use of attributes for static meshes; now some attributes may be considered optional.
Added FStaticMeshAttributes, used for fetching and registering all the attributes required by a static mesh.
Added Blueprint interface for building meshes.
Deprecated a number of existing APIs:
 - FMeshDescription methods which referred explicitly to static mesh specific attributes
 - StaticMesh attribute registration has been moved to FStaticMeshAttributes
#rb none

[CL 9123037 by Richard TalbotWatkin in Dev-Editor branch]
2019-09-26 05:03:53 -04:00
Alexis Matte
907a88c608 Add an option to allow compute normals to use weight by area and angle.
#jira UE-79195
#rb jimmy.andrews
#rn Add an fbx option to allow compute normals to use weight by area and angle for both staticmesh and skeletalmesh. Add also a staticmesh build options for the feature.

[CL 8364158 by Alexis Matte in Dev-Editor branch]
2019-08-28 15:15:21 -04:00
Richard TalbotWatkin
7252700c79 Integrated from Main CL 7668565.
Deprecated direct access to UStaticMesh::SourceModels, SectionInfoMap and OriginalSectionInfoMap.
Added new accessors for getting individual SourceModels, or the entire array.
#rb none
#jira none

[CL 7668661 by Richard TalbotWatkin in Dev-Editor branch]
2019-07-31 05:35:17 -04:00
Chris Gagnon
812b127109 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 6525730 by Chris Gagnon in Dev-Editor branch]
2019-05-15 19:27:16 -04:00
Chris Gagnon
56e73ed431 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 6042607 by Chris Gagnon in Dev-Editor branch]
2019-04-22 18:56:08 -04:00
Chris Gagnon
00f8b72a0b Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 5602170 by Chris Gagnon in Dev-Editor branch]
2019-03-27 15:03:08 -04:00
Chris Gagnon
1dd3e0189f Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4730305 by Chris Gagnon in Dev-Editor branch]
2019-01-15 18:47:22 -05:00
Chris Gagnon
8fc25ea18e Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4676797 by Chris Gagnon in Dev-Editor branch]
2019-01-02 14:54:39 -05:00
Richard TalbotWatkin
e74a1e7fc4 - Deprecated FRawMesh as source model serialization format for static meshes.
- MeshDescription now held as compressed bulk data and unpacked on demand. This is managed by FMeshDescriptionBulkData.
- Made RawMesh accessors in StaticMesh responsible for performing legacy conversion from MeshDescription if necessary.
- Added FBulkDataReader/FBulkDataWriter for serializing bulk data to/from archives.
- Added FUntypedBulkData::UnloadBulkData() for releasing the bulk data allocation without invalidating it (so it can be reloaded when necessary). Editor only.
- Renamed StaticMesh MeshDescription methods (now GetMeshDescription(), CommitMeshDescription() etc).
- Removed unnecessary mesh description attributes from StaticMesh: those which are used only by Editable Mesh, and transient attributes which are automatically generated when needed for building vertex tangent space.
- Slight change to FAttributesSetBase::RegisterAttribute(): if the attribute specified already exists, it will be amended to adopt the type, passed flags and number of indices. If only the number of indices changes, any existing data will be preserved if possible.
- Added TMeshAttributesRef::Copy() to copy an entire attributes array from one name/index to another.
- Changed implementation of TMeshAttributesRef/TMeshAttributesView to provide a const ref/view if the template type parameter is const. Added TMeshAttributesConstRef/TMeshAttributesConstView as an alias for backwards compatibility.
- Added FMeshDescription::IsEmpty() for determining whether a mesh description has any content or not.
- Removed versioning GUID for mesh description: this should be handled by each mesh description client now.

#rb Alexis.Matte

[CL 4644791 by Richard TalbotWatkin in Dev-Editor branch]
2018-12-10 09:29:08 -05:00
Alexis Matte
8b96dc21df Deprecate FRawMesh - Mesh merge utilities
#jira UE-64437
#rb none

[CL 4424092 by Alexis Matte in Dev-Editor branch]
2018-10-03 16:09:08 -04:00
Marc Audy
d90da4ab1a Merge to Dev-Main for 4.20 @ 4090813
#rb
#rnx
#lockdown Nick.Penwarden

[CL 4091081 by Marc Audy in Main branch]
2018-05-23 21:04:31 -04:00
Matt Kuhlenschmidt
238fcb9d83 Merging //UE4/Dev-Main to Dev-Geometry (//UE4/Dev-Geometry)
#fyi richard.talbotwatkin, alexis.matte

#rb none

[CL 3928841 by Matt Kuhlenschmidt in Dev-Geometry branch]
2018-03-06 13:26:20 -05:00
Alexis Matte
1119758fae Change Meshdescription to use FName instead of indexes.
#rb none

[CL 3924913 by Alexis Matte in Dev-Geometry branch]
2018-03-05 10:06:09 -05:00
Matt Kuhlenschmidt
68f4525e1b Merging //UE4/Dev-Main to Dev-Geometry (//UE4/Dev-Geometry)
#rb none

[CL 3889612 by Matt Kuhlenschmidt in Dev-Geometry branch]
2018-02-14 14:13:42 -05:00
Alexis Matte
aa84947dfc Make the mesh description conversion from/to rawmesh
Move triangulation from editable mesh to MeshDescription
Fix the edge creation when importing a fbx to mesh description
Add automation tests for mesh description, add some conversion tests
Load orion monolith02 level succesfully using meshdescription instead of rawmesh

#rb none

[CL 3817088 by Alexis Matte in Dev-Geometry branch]
2017-12-28 17:15:00 -05:00
Mike Fricker
3892ace583 Merging //UE4/Dev-Main to Dev-Geometry (//UE4/Dev-Geometry) (up to CL 3517493)
#rb none

[CL 3517961 by Mike Fricker in Dev-Geometry branch]
2017-06-30 12:21:06 -04:00