XC_Core Version 8

A Collection of XC_Engine Works.
Post Reply
User avatar
SC]-[WARTZ_{HoF}
Site Admin
Posts: 420
Joined: Wed May 10, 2017 7:08 am

XC_Core Version 8

Post by SC]-[WARTZ_{HoF} » Sun Aug 02, 2020 11:13 pm

XC_Core v8. Alternate Link-------> UT99.org
XC_Core_8.7z
(289.59 KiB) Downloaded 75 times

Linux build requires Core.so build that exports __Context::Env symbol.

Added/improved APIs for use in other native packages:
- FThread
- FMallocThreadedProxy
- Atomics
- FOutputDeviceFileXC
- FOutputDeviceInterceptor
- API_FunctionLoader

== FThread:
Simple multithreader abstraction, lets the coder easily run new threads
without resorting to platform-specific code.

== FMallocThreadedProxy:
Uses spinlocks to prevent multiple threads from using the game's allocator.
Allows launchers to implement the proxy without importing from XC_Core.dll

== FOutputDeviceFileXC:
Improved log output device for launchers and UCC apps.
Safe to log lines of any char length.
Uses Windows \r\n newline characters regardless of platform.
Adding -logflush to the app's command line will force flush after every line.
The log file can be opened in read-only mode while the app is still running.
If two apps attempt to use the same filename, another file with a '_2' appended to it will be used.

== FOutputDeviceInterceptor:
Remembers last 16 logs and in case of seeing a repeating pattern, it'll
simply indicate how many times the last X (1 to 16) lines repeat instead
of printing everything.
When the game enters into 'Critical' shutdown stage, a new timestamped
log file will be created with the Critical lines logged on it.
The interceptor also has a spinlock system to ensure thread safe operations.

XC_Core package downloader changes:
- Uses asynchronous decompression.
- More reliable file writing.

Added BrushToMesh native for use in Unreal Editor.

Post Reply