Commit Graph

37 Commits

Author SHA1 Message Date
Sebastien Lussier
cd750ce23f #jira UE-82185, UE-82545
HLOD useLODAImposter seems to not copy over all UV channels
Mesh merging code was assuming the UV2 & UV3 channels were free to use to store position & scale of imposter instances.
This behavior seems to have been hacked in the engine for an internal project & is not needed anymore since it's now possible to use instanced static meshes with LODActors
Still kept old behavior around (CVar) in case someone would really need it
#rb patrick.enfedaque

[CL 9868123 by Sebastien Lussier in Main branch]
2019-10-28 07:45:29 -04:00
Laz Matech
72f6e33bd6 Back out changelist 9845167
Attempted to resolve merge conflict for CL 9844036 Robomerge, it caused compilation errors

#rb Jake.Romigh
#fyi sebastien.lussier

[CL 9845666 by Laz Matech in Main branch]
2019-10-25 19:58:34 -04:00
laz matech
1e0c51a8f4 #rb Jake.Romigh
#jira UE-82185
HLOD useLODAImposter seems to not copy over all UV channels
Mesh merging code was assuming the UV2 & UV3 channels were free to use to store position & scale of imposter instances.
This behavior seems to have been hacked in the engine for an internal project & is not needed anymore since it's now possible to use instanced static meshes with LODActors
Still kept old behavior around (CVar) in case someone would really need it
#patrick.enfedaque
[FYI] bryce.lumpkin


#ROBOMERGE-OWNER: laz.matech
#ROBOMERGE-AUTHOR: sebastien.lussier
#ROBOMERGE-SOURCE: CL 9843087 via CL 9843965 via CL 9844036
#ROBOMERGE-BOT: (v548-9842178)

[CL 9845167 by laz matech in Main branch]
2019-10-25 19:23:58 -04:00
Chris Gagnon
8ab0638182 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.24
#rb none

[CL 9325047 by Chris Gagnon in Main branch]
2019-10-01 20:41:42 -04:00
Chris Gagnon
2e87118a18 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) Interim 4.24.
#rb none

[CL 8614014 by Chris Gagnon in Main branch]
2019-09-10 11:35:20 -04:00
sebastien lussier
29d148d4c2 GenerateProxyMesh causes incorrect transform in ISM using Scale
#jira UE-79140
jeanfrancois.dube


#ROBOMERGE-SOURCE: CL 8210627 via CL 8211744
#ROBOMERGE-BOT: (v401-8057353)

[CL 8211754 by sebastien lussier in Main branch]
2019-08-22 10:48:59 -04:00
Benn Gallagher
3a4873ef60 Copying //UE4/Dev-Physics to Dev-Main (//UE4/Dev-Main) @ 7703071
#rb
#rnx

[CL 7705805 by Benn Gallagher in Main branch]
2019-08-02 09:01:58 -04:00
richard talbotwatkin
c0ef3053d2 Deprecated direct access to UStaticMesh::SourceModels, SectionInfoMap and OriginalSectionInfoMap.
Added new accessors for getting individual SourceModels, or the entire array.
#rb none
#jira none

#ROBOMERGE-SOURCE: CL 7668562 in //UE4/Release-4.23/...
#ROBOMERGE-BOT: RELEASE (Release-4.23 -> Main) (v372-7473910)

[CL 7668565 by richard talbotwatkin in Main branch]
2019-07-31 03:40:45 -04:00
Chris Gagnon
930e33cb48 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.23 From CL 6837861
#rb none

[CL 6838042 by Chris Gagnon in Main branch]
2019-06-04 15:42:48 -04:00
sebastien lussier
44edaff438 HLOD Imposters
* Now extracted from sub levels and brought in the main map to be rendered as instanced static meshes.
* Impostors meshes created during proxy creation.

#rb jeanfrancois.dube, jurre.debaare


#ROBOMERGE-SOURCE: CL 6675359 via CL 6675861
#ROBOMERGE-BOT: (vundefined-6665479)

[CL 6675880 by sebastien lussier in Main branch]
2019-05-30 10:37:45 -04:00
alexis matte
93de9edd67 Tentative, fix crash when generating HLOD with impostor
#jira UE-73420
#rb none
#lockdown cristina.riveron

#ROBOMERGE-SOURCE: CL 6256521 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 6317323 by alexis matte in Main branch]
2019-05-06 11:32:24 -04:00
sebastien lussier
c545e330ef Merging negative-scaled actors breaks materials
#fix No need to reverse the section indices when a static mesh has a mirrored transform as TransformRawMeshVertexData() is now calling ReverseAllPolygonFacing() in this specific case
#jira UE-56953
#rb none
#lockdown cristina.riveron

#ROBOMERGE-SOURCE: CL 6252335 in //UE4/Release-4.22/...
#ROBOMERGE-BOT: RELEASE (Release-4.22 -> Main)

[CL 6317322 by sebastien lussier in Main branch]
2019-05-06 11:32:22 -04:00
alexis matte
2e23ecefeb Need to Abs the X scale of the actor transform when generating imposter HLOD mesh.
#rb jurre.debaar


#ROBOMERGE-SOURCE: CL 5669391 via CL 5669393 via CL 5669505 via CL 5669539 via CL 5671569

[CL 5671746 by alexis matte in Main branch]
2019-04-01 14:23:00 -04:00
alexis matte
5339402247 Fix material swap when merging imposter
#rb none


#ROBOMERGE-SOURCE: CL 5669159 via CL 5669160 via CL 5669495 via CL 5669531 via CL 5671540

[CL 5671695 by alexis matte in Main branch]
2019-04-01 14:22:43 -04:00
alexis matte
9b640e5c44 Make sure the imposter materials are assign properly when there is more then one different imposter in the HLOD.
#rb none


#ROBOMERGE-SOURCE: CL 5659664 via CL 5659665 via CL 5659666 via CL 5659667 via CL 5659711

[CL 5659716 by alexis matte in Main branch]
2019-03-29 21:34:29 -04:00
alexis matte
4a75e4824b Fix the imposter mesh merge
#rb none


#ROBOMERGE-SOURCE: CL 5659536 via CL 5659537 via CL 5659538 via CL 5659539 via CL 5659639

[CL 5659641 by alexis matte in Main branch]
2019-03-29 20:53:37 -04:00
alexis matte
53aed53d80 Fix HLOD proxy build assert
#rb none


#ROBOMERGE-SOURCE: CL 5639421 via CL 5639422 via CL 5639423 via CL 5639656 via CL 5640999

[CL 5647746 by alexis matte in Main branch]
2019-03-29 13:32:05 -04:00
alexis matte
2875a3c6c6 Fix the GenerateUniqueUVsForStaticMesh when there is some duplicate polygon and we remove them, we must avoid Compacting the Polygon so the Remap VertexInstanceID is still valid.
There was a second crash after this one where the code did not call RegisterMeshAttribute on a newly created FMeshDescription.
#jira UE-71929
#rb none


#ROBOMERGE-SOURCE: CL 5504837 via CL 5504994 via CL 5517943

[CL 5535766 by alexis matte in Main branch]
2019-03-25 14:01:20 -04:00
Chris Gagnon
a48e767b94 Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4835066 by Chris Gagnon in Dev-Editor branch]
2019-01-29 16:15:19 -05:00
Richard TalbotWatkin
f2a3f32edf Change to FMeshDescription API. CreatePolygon[WithID] now takes a simple array of vertex instances instead of FMeshDescription::ContourPoint, hence there is no need to specify corresponding edge IDs. Any edges which do not exist in the mesh description will be automatically created by CreatePolygon, and their IDs returned.
Fixed up all code to use the new method, fixed a few bugs.
#rb Alexis.Matte

[CL 4750082 by Richard TalbotWatkin in Dev-Editor branch]
2019-01-18 06:37:35 -05:00
Ryan Schmidt
9d7694518c Remove all references to holes-in-polygons from MeshDescription and EditableMesh
#codereview richard.talbotwatkin

[CL 4709054 by Ryan Schmidt in Dev-Editor branch]
2019-01-11 10:08:05 -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
d4f802bff2 Set the base LOD to be the previous custom LOD
#jira UE-49033
#rb none

[CL 4633520 by Alexis Matte in Dev-Editor branch]
2018-12-05 14:55:06 -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