A Community discussion forum for Halo Custom Edition, Halo 2 Vista, Portal and Halo Machinima

Home  Search Register  Login Member ListRecent Posts
  
 
Viewing User Profile for: Polingo
About Contact
Joined: Dec 10, 2019 05:30 AM
Last Post: Jun 25, 2020 08:16 PM
Last Visit: Jun 25, 2020 08:16 PM
Location:
Occupation:
Interests:
Your Age:
What Games do you play:


Send Private Message
Post Statistics
Polingo has contributed to 6 posts out of 464911 total posts (0.00%) in 210 days (.03 posts per day).

20 Most recent posts:
Halo CE General Discussion » [Utility] Reclaimer Jun 25, 2020 08:16 PM (Total replies: 144)

Quote: --- Original message by: Gravemind
What makes you say it should look like that? What tool did you use that gave you that output? I opened the raw DDS image using a DDS viewer and it looked the same as what Reclaimer is showing.


I say this because some textures ripped with Reclaimer appear much darker then whats in game, here is Tillson from H4 for example:

https://cdn.discordapp.com/attachments/562743485669703686/725848615498678422/rmcrum3.png

In game shot has a bit of reds likely due to subsurface scattering.

The texture from my previous post was pulled from MCC UI using UModel. I've known about this for a while already as there are tools for different games that have this same issue, I just could never get a decent example of it until now.

https://cdn.discordapp.com/attachments/562743485669703686/725833655557029969/rmcrum.PNG

From what I've been told apparently this has something to do with the tool not ripping the texture at its proper bit range or color space thus, they get darkened usually by a gamma value of 0.4545, but I am not 100% sure and thats about all I got unfortunately.
It could also be that the textures are darkened on purpose and read as linearly in-engine to get around some quirk within it, whatever that may be. Though that still would not explain the normal mapping getting pushed down to a certain bit depth as if it is being read as such by engine.

Halo CE General Discussion » [Utility] Reclaimer Jun 22, 2020 03:06 AM (Total replies: 144)

Couple of more bugs I forgot to include in my previous post:

Some textures ripped with Reclaimer appear darker then they should.
Visibly, it looks like they are being gamma corrected by 0.4545 when they shouldn't. I have seen normal maps been affected by this as well, but they seem to be darkened in a manner.

https://cdn.discordapp.com/attachments/562743485669703686/724502528854851644/reclmr_txtr1hm.png

May need to copy the urls in browser window since according to the preview, the img tag doesn't appear to be working.

Gamma correcting the textures by 2.2 (the inverse of 0.4545) in photoshop seems to negate it for the most part but some depth will be lost if the texture has some dark areas as seen in the example above. Texture there is the red channel of storm_spartan_markv_torso_control from Halo 4 patch maps.

Here is a list of several bitmaps that are to my knowledge are affected by this.

bohemeth_panels_diff (shrine.map from Halo 3)
elite_base_upper_diff (from Halo Reach)
fore_mantle_normal & forerunner_mantle_detail_normal (m020.map from Halo 4)
storm_librarian_gown_diff, storm_librarian_head_diff, & storm_librarian_head_wrinkle_diff (m40_invasion.map from Halo 4)
Some of H4 mp armor control maps.

Some cubemaps don't seem to come out properly, they come out with either red artifacting or only one tile. Adjutant on left and Reclaimer on right.

https://cdn.discordapp.com/attachments/562743485669703686/724502522693156906/reclmr_cubmhm.png
https://cdn.discordapp.com/attachments/562743485669703686/724502511058419712/reclmr_cubm2hm.png

Some UI elements seems to have similar artifacting on them as well. Bitmap here is storm_fuel_rod_cannon_default_display_diff from Halo 4.

https://cdn.discordapp.com/attachments/562743485669703686/724502514111873031/reclmr_txtr2.PNG

And another question, were blend shapes by chance ever looked into? to be more specific, they're deformations of the original mesh used typically for facial animation as mentioned on the first page. The only Halo game that uses them to my knowledge is Halo 4, hence the absence of face bones on the head models.
Not sure if this will be of any use, but here is a summary about a talk that the Lead Character Artist at 343 gave at FMX in which he dives in a bit about facial animation in Halo 4.
https://forum.beyond3d.com/threads/halo-4.52050/page-61#post-1603790

Halo CE General Discussion » [Utility] Reclaimer May 26, 2020 11:51 PM (Total replies: 144)

Quote: --- Original message by: Gravemind
I wasn't able to reproduce this on the Crimson or Castle maps. What file were you using?

mainmenu_patch, onyx_patch, and onyx_spops_patch.

To clarify, DLC maps themselves along with their contents appear to open fine, the only ones that seem to give this error are the patch .map files that contain the DLC armors.
Edited by Polingo on May 26, 2020 at 11:54 PM

Halo CE General Discussion » [Utility] Reclaimer May 26, 2020 02:57 AM (Total replies: 144)

Thought I'd stop by again to toss down a few bugs I came across during usage along with a question.

Whenever I import some head models from Halo 4 into max, they dont seem to do so properly.



So far the only models that I peeped at that have this issue are Cortana, Didact, and Lasky. They appear fine in the model viewer, however.


When I try extracting bitmaps from any game via model viewer, it gives me this.
Error extracting objects\characters\storm_masterchief\bitmaps\storm_masterchief_default\storm_masterchief_default_armor_arm_diff.bitmap
System.NullReferenceException: Object reference not set to an instance of an object.
at Reclaimer.Controls.ModelViewer.<>c__DisplayClass47_0.<btnSaveBitmaps_Click>b__0()


The Halo Reach sniper rifle does not seem to open.
Loading model: objects\weapons\rifle\sniper_rifle\sniper_rifle.render_model
Error loading model: objects\weapons\rifle\sniper_rifle\sniper_rifle.render_model
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at System.Collections.Generic.List`1.get_Item(Int32 index)
at System.Collections.ObjectModel.Collection`1.get_Item(Int32 index)
at Adjutant.Blam.HaloReach.HaloReachCommon.<GetMaterials>d__2.MoveNext()
at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
at Adjutant.Blam.HaloReach.render_model.ReadGeometry(Int32 lod)
at Reclaimer.Controls.ModelViewer.SetLod(Int32 index)
at Reclaimer.Controls.ModelViewer.LoadGeometry(IRenderGeometry geometry, String fileName)
at Reclaimer.Plugins.ModelViewerPlugin.OpenFile(OpenFileArgs args)


Not sure if this one is an issue, or if they are just not supported, but H4 dlc models don't seem to open either.
Loading model: objects\dlc\characters\storm_masterchief\storm_masterchief_tu_stripped.render_model
Error loading model: objects\dlc\characters\storm_masterchief\storm_masterchief_tu_stripped.render_model
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: startIndex
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at System.BitConverter.ToInt16(Byte[] value, Int32 startIndex)
at System.IO.Endian.EndianReader.ReadInt16(ByteOrder byteOrder)
at System.IO.Endian.EndianReader.ReadInt16()
at Deserialize<SequenceBlock>[12](EndianReader , SequenceBlock )
at System.IO.Endian.DynamicReader`1.Read(EndianReader reader, Nullable`1 version, T instance)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.IO.Endian.EndianReader.DynamicRead(Object instance, Type type, Nullable`1 version)
at System.IO.Endian.EndianReader.ReadObject(Object instance, Type type, Nullable`1 version)
at System.IO.Endian.EndianReader.ReadObject(Type type, Double version)
at Adjutant.Blam.Common.BlockCollection`1..ctor(DependencyReader reader, ICacheFile cache, IAddressTranslator translator)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Adjutant.Utilities.DependencyReader.Construct(Type type, ConstructorInfo constructor)
at Adjutant.Utilities.DependencyReader.CreateInstance(Type type, Nullable`1 version)
at System.IO.Endian.EndianReader.DynamicRead(Object instance, Type type, Nullable`1 version)
at System.IO.Endian.EndianReader.ReadObject(Object instance, Type type, Nullable`1 version)
at System.IO.Endian.EndianReader.ReadObject[T](Double version)
at Deserialize<bitmap>[12](EndianReader , bitmap )
at System.IO.Endian.DynamicReader`1.Read(EndianReader reader, Nullable`1 version, T instance)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.IO.Endian.EndianReader.DynamicRead(Object instance, Type type, Nullable`1 version)
at System.IO.Endian.EndianReader.ReadObject(Object instance, Type type, Nullable`1 version)
at System.IO.Endian.EndianReader.ReadObject(Type type, Double version)
at Adjutant.Blam.Halo4.IndexItem.ReadMetadataInternal[T]()
at Adjutant.Blam.Halo4.IndexItem.ReadMetadata[T]()
at Adjutant.Blam.Halo4.Halo4Common.<GetMaterials>d__0.MoveNext()
at System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection)
at Adjutant.Blam.Halo4.render_model.ReadGeometry(Int32 lod)
at Reclaimer.Controls.ModelViewer.SetLod(Int32 index)
at Reclaimer.Controls.ModelViewer.LoadGeometry(IRenderGeometry geometry, String fileName)
at Reclaimer.Plugins.ModelViewerPlugin.OpenFile(OpenFileArgs args)


And lastly, H2 first person needler does not seem to import with its needles skinned.



Also, out of curiosity, has there been any progress been made on H5F support? I recall seeing a few folks with a build of Reclaimer that can open h5 stuff to a limited extent but thats about it if I am not mistaken.

Halo CE General Discussion » [Utility] Reclaimer Feb 17, 2020 12:17 AM (Total replies: 144)

Don't know if I am just being a buffoon but the new version appears to be crashing on my end whenever I try to open any .map file of any kind.

Application: Reclaimer.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.IO.FileLoadException

Exception Info: System.IO.FileLoadException
at Adjutant.Blam.Common.CacheFactory.GetCacheTypeByFile(System.String)
at Adjutant.Blam.Common.CacheFactory.ReadCacheFile(System.String)
at Reclaimer.Controls.MapViewer.LoadMap(System.String)
at Reclaimer.Plugins.MapViewerPlugin.OpenPhysicalFile(System.String)
at Reclaimer.Plugins.MapViewerPlugin.OnMenuItemClick(System.String)
at System.Windows.EventRoute.InvokeHandlersImpl(System.Object, System.Windows.RoutedEventArgs, Boolean)
at System.Windows.UIElement.RaiseEventImpl(System.Windows.DependencyObject, System.Windows.RoutedEventArgs)
at System.Windows.Controls.MenuItem.InvokeClickAfterRender(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
at System.Windows.Application.RunDispatcher(System.Object)
at System.Windows.Application.RunInternal(System.Windows.Window)
at Reclaimer.App.Main()


Halo CE General Discussion » [Utility] Reclaimer Dec 10, 2019 10:35 PM (Total replies: 144)

Working and looking pretty good thus far, I have a question though. If you ever get around to getting Halo 4 models working, will blend shape extraction for head models ever be added, or will that require a bit too much work?


Time: Mon July 6, 2020 7:47 AM 172 ms.
A Halo Maps Website