mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
5.5
38 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
4fa806cf66 |
Add a new initialization path to ISourceControlProvider allowing the caller to customize the initialization logic and retrieve more info about the initialization itself.
#rb Per.Larsson ### ISourceControlProvider - Add a new ISourceControlProvider::Init overload that returns a struct (FInitResult) and takes a bitfield of flags (EInitFlags) so that we can more easily extend the initialization in future and return things to the caller. - If a provider does not implement the new overload we fall-back to the original. This will be removed once all providers support the new path. ### PerforceSourceControlProvider - Support the new init options via FPerforceConnection::EnsureValidConnection and update places that call it. ### FPerforceConnection - Update ::AutoDetectWorkspace to return errors to the caller rather than handle its own logging. - ::TestLoginConnection and ::TestClientConnection no longer calls FPerforceSourceControlProvider::SetLastErrors, this will be done at a higher level. - ::AutoDetectWorkspace still does its own logging which will be fixed in a future update, it does however return its errors to the caller. - Split the implementation of ::EnsureValidConnection to a stand alone internal function, the original function now handles and consolidates error handling. -- Changed the logic to early out of failure rather than constantly checking a boolean all the way down. -- Tried to remove the need for FPerforceSourceControlProvider to be passed in but a few places still require it. -- Fixed our handling of the P4PORT value so that we can at least report problems if the address uses unicode characters. I have not yet tested if we can actually connect to such an address. We no longer use the servers unicode setting to decide the port strings encoding as it is not affected by the server settings. -- Each error encountered should now record a localized error that we expect the user to be able to react to, then an array of errors from the API itself. -- Once the internal code has run we will do a pass on all errors (if any) and strip any whitespace at the end (p4 tends to end error messages with newline characters) and then add a final entry to the additional errors detailing the settings at the point of failure. This was mostly being done before but is now enforced for every error. -- No longer log the ticket, although the workflow to allow the user to supply one is not common we still probably don't want to save that to log files. [CL 26952104 by paul chipchase in ue5-main branch] |
||
|
|
fbe917e059 |
[BugFix] Review tool failing to connect to swarm
- Failed if user had multiple p4 tickets - Failed if default p4 username didn't match the provided username in UE #jira UE-181982 #rb paul.chipchase #preflight 643061621d61ecec3b63c465 [CL 24970980 by jordan hoffmann in ue5-main branch] |
||
|
|
f6978a065c |
Created new Source Control feature flag UsesSnapshots() to solve inconsistency in use of UsesChangelists() and UsesFileRevisions() causing issues for git Source Control Provider
* Option to check in an asset from the Content Browser Source Control Context Menu is now enabled if the SCC does not use Snapshots instead of if it uses File Revisions * Option to check in an asset from the Scene Outliner Source Control Context Menu is now enabled if the SCC does not use Snapshots instead of if it uses File Revisions * Ability to uncheck files in the Submit Files Window is now enabled if the SCC does not use Snapshots instead of if it uses File Revisions * Option to revert the writable flag on an asset in the Content Browser Source Control Context Menu is now enabled if the SCC uses checkout instead of if it uses File Revisions (like the 'Make Writable' option) #jira UCS-6630 #rb brooke.hubert, wouter.burgers #lockdown jeanmichel.dignard #preflight 640e6b41482188d710ff8316 [CL 24724061 by marco anastasi in ue5-main branch] |
||
|
|
1d6ef4b2e3 |
SourceControl: Added CanExecuteOperation to ISourceControlProvider interface.
#preflight 63de1752fe33a06594fc2e02 [CL 24018386 by wouter burgers in ue5-main branch] |
||
|
|
d8b31f7ed0 |
Add a flag to the source control provider to tell us if 'uncontrolled' changelists are supported.
#rb Marco.Anastasi, zach.rammell #prelight 6398633f8c5081ee9a275f20 [CL 23499875 by stuart hill in ue5-main branch] |
||
|
|
1fc502d9b1 |
Give the option to disable being able to diff files in the Source Control Submit Widget. To allow this, AllowsDiffAgainstDepot function should return false.
#preflight 6360fd498768c5532f5425f0 #rb Marco.Anastasi, Patrick.Laflamme [CL 22888653 by stuart hill in ue5-main branch] |
||
|
|
dd01cd42b5 |
Create shortcut buttons in Status Bar for Skein operations
#rb wouter.burgers, patrick.laflamme #preflight 63301d3d665f6b8f7fab0066 RESOLUTION: Resolved conflict with IsAtLatestRevision() and GetNumLocalChanges() [CL 22193646 by marco anastasi in ue5-main branch] |
||
|
|
286e2234bf |
SourceControl / UEFN: Remove / disable 'sync' context menu item in Content Browser.
For SourceControl providers that do not support individual file revisions, the 'Sync' option in the context menu of the Content Browser is misleading as it suggests only the selected files/folders will be synced, while in reality the sync is project wide. I've left the current behavior as the default behavior for all but Skein/Git of which I know they do not support individual file revisions. #preflight 631ec93359159ac1832b5538 [CL 22086921 by wouter burgers in ue5-main branch] |
||
|
|
7f2a598696 |
Refactored the Changelist Window UI to work better with large changelists along with bug fixes.
This submit should not regress any existing functionalites of the previous widget. Along with the user interface changes, notable bug fixes were included - If a changelist is not specified for P4 operations 'Mark for Add', 'Mark for Delete and 'Checkout', defaulted to the 'default' P4 changlist. Without a valid changelist, the cache wasn't properly updated. - Fixed updating the cache for P4 'Mark for delete' operation not correctly updating the file changelist cached in the file state. Other changes: - P4 changelists are now always returned sorted by changelist number, ascending. - Some of the safe operations were running synchronous are not running asynchrnous (create new changelist, delete empty changelist, delete shelved files). This submit addresses the following Jiras: #jira UE-155207 - Refactor the changelist window layout to have the left/right panel. #jira UE-155209 - Add the context menu on right click on a file or a changelist. #jira UE-155218 - Support creating new empty changelist from the changelist view. #jira UE-155220 - Support moving files from the selected changelist (right view) to another changelist (left view) #jira UE-155211 - Add visual feedback for any operation taking more than 0.5s. #jira UE-155212 - Display a list of uncontrolled files in the left panel of the changelist window #jira UE-155499 - Changelist windows buttons should be disabled if SCC is disabled #jira UE-155229 - Add an option to automatically refresh the changelist window when new assets are imported|created (as uncontrolled), marked for add, checked out, marked for delete #jira UE-107577 - Source Control's Changelists dialog does not refresh to reflect changes made while open #rb Patrick.Enfedaque #preflight 62ff946ef7404b55a326297b [CL 21499885 by patrick laflamme in ue5-main branch] |
||
|
|
de1956f47b |
Ran IWYU on Public headers under Engine/Source/Developer/...
Headers are updated to contain any missing #includes needed to compile and #includes are sorted. Nothing is removed. #ushell-cherrypick of 21064294 by bryan.sefcik #jira #preflight 62d5c2111062f2e63015e598 #ROBOMERGE-OWNER: bryan.sefcik #ROBOMERGE-AUTHOR: bryan.sefcik #ROBOMERGE-SOURCE: CL 21155249 via CL 21158121 via CL 21161259 #ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824) [CL 21182053 by bryan sefcik in ue5-main branch] |
||
|
|
c08d860e2e |
Allow additional source control providers to be created so that specialized subsystems can maintain their own separate connection without interrupting the normal editor workflows.
#rb Luc.Eygasier, Sebastien.Lussier #rnx #preflight 622895d331133a23da78a4ca ### Misc - FPerforceSourceControlRevision, FPerforceConnection and FPerforceSourceControlLabel now own a reference to their FPerforceSourceControlProvider and accesses the connection settings from that rather than via the module singleton. - FPerforceSourceControlCommand now accesses the connection settings by finding the FPerforceSourceControlProvider that the given IPerforceSourceControlWorker references. - FPerforceSourceControlProvider now owns it's own FPerforceSourceControlSettings rather than accessing a shared one owned by the module. - Marked a number of derived classes as final. ### FPerforceConnection - ::EnsureValidConnection can now work without a valid client (although most commands will require a client to run, things like p4 print does not). -- Due to this change we might not catch cases where the the system cannot connect to source control as the user is not logged in as this would get caught when we checked the workspace by calling ::TestConnection. -- To get around this ::EnsureValidConnection will now call "p4 login -s" via the newly added TestLoginConnection. - Renamed ::TestConnection to ::TestClientConnection as we are really testing the connection to the specified workspace. - There does seem to be some inconsistency in the logging, depending how a perforce source control provider first creates its connection as in some cases FPerforceConnection::EnsureValidConnection gets called first and in other cases FPerforceConnection::EstablishConnection is called. We should unify these paths but this change list is already so large I am opting to postpone this to it's own work item. ### FPerforceSourceControlModule - Removed all of the singleton style accessors so that classes inside of the module can no longer assume that there is only one FPerforceSourceControlProvider. Updated the documentation to match. - Since there is no reason for classes in the module to need to access FPerforceSourceControlModule, ::Get has been removed - The responsibility to register all of the worker creation delegates has been moved to IPerforceSourceControlWorker so that all source control providers can share them. - ::GetProvider has been removed, if a class inside the module needs access to a provider then a reference to it's provider will be given to it at construction time. - ::SetLastError, ::AccessSettings and ::SaveSettings are now called directly on FPerforceSourceControlSettings ### FPerforceSourceControlSettings - This class now takes the name of the system that owns it as a parameter in the constructor -- The name will be used to identify where to store the settings in the config file, unless the name is blank in which case the pre-existing default location will be used. - This will allow for multiple source control providers to store their connection info. ### SPerforceSourceControlSettings - Moved FGetWorkspaces from SPerforceSourceControlSettings.h to its own header file to reduce the number of places that need to include the slate headers. - Move the fwd declares to the top of the header base don recent coding standards discussions. - Instead of accessing the source control provider via FPerforceSourceControlModule the dialog is now given a pointer to one when constructed. -- This pointer is assumed to always be valid and should be a reference if the slate system supported it. ### PerforceSourceControlOperations - IPerforceSourceControlWorker now takes a reference to the owning FPerforceSourceControlProvider in it's constructor. All derived workers have been updated to this. - Moved the registering of worker creation delegates from the module cpp to a new static method IPerforceSourceControlWorker::RegisterWorkers -- This should make it easier to find when adding a new worker and allows source control providers to share the same map of delegates rather than duplicating it. -- This means we also need a new static method IPerforceSourceControlWorker::CreateWorker for instantiating new workers based on the given name. ### FSourceControlInitSettings - This is a new class that is used to set up a newly created source control provider. - The settings are expected to be given in the same way you would override settings via the cmdline. The existing perforce cmdline code has been updated to use this class. - This still has the downside that the calling code needs to know the type of source control provider, but I don't really see a good way around this unless we refactor the entire API to be feature based. [CL 19318801 by paul chipchase in ue5-main branch] |
||
|
|
21a5d2fe7c |
The ability to create, delete and switch workspaces via the SourceControl API. Currently this is only implemented for the perforce source control plugin.
#rb Sebastien.Lussier
#rnx
#preflight 611e457e2c1f1c0001292a29
### ISourceControlProvider / PerforceSourceControlProvider
- Add new method ::SwitchWorkspace allowing the caller to switch the current workspace.
- Currently only implemented for perforce.
- Calling this will cause the provider to close and then re-open it's connection and so will invalidate any existing established connection or cached states. Due to this the method will fail if there are outstanding commands being processed.
- It is intended that this is only used for short periods of time, in order to submit or access files from locations that the user chosen workspace might be able to access.
- The new workspace will not be saved to the source control settings. Although this could occur later if done.
### SourceControlOperations
- Add new operation **FCreateWorkspace**.
- Currently only implemented for perforce.
- The name and the root of the workspace (filepath on the client machine) must be provided in the constructor.
- Additional mappings can be provided by calling **AddNativeClientViewMapping** which expects the mapping to be in the native format of the target source control system. At some point in the future we may add a more generic, target agnostic, format.
- Add new operation **FDeleteWorkspace**.
- Currently only implemented for perforce.
- Deletes the workspace of the given name although the workspace must be in a state where it can be deleted (no files open for add/edit/delete etc) or the operation will fail.
### PerforceConnection
- Add a new method ::CreateWorkspace for creating workspaces
- Add a new extended client 'FP4CommandWithStdInputClientUser'
- We should really extend FP4ClientUser to be able to take overridden stdinput instead but that would mean adding yet another input parameter. I'd rather keep the code separate for now and then merge them together in a future refactor where the many input parameters of ::RunCommand is replaces with a struct with TOptional members.
- Added a ::GetUser method, which returns the user of the current connection without the caller needing to know if the connection is in unicode format or not.
[CL 17350788 by paul chipchase in ue5-main branch]
|
||
|
|
18dc064335 |
Add support for downloading a file from source control directly without actually checking it out (ie p4 print) and add additional support so that the command can be called from a background thread.
- Only implemented for perforce source control at the moment. - The source control operation FDownload file can be used just like any other command via ::Execute BUT it will also work with the new method ::TryToDownloadFileFromBackgroundThread which unlike ::Execute can be called from a background thread. #rb Sebastien.Lussier #rnx #preflight 60a2290322cce000014243ae * PerforceConnection - Extend ::RunCommand to take an optional FSharedBuffer reference which can be used to return text/binary data downloaded as part of a perforce command -- Ideally we would replace all of the out parameters with a single struct but that level of refactor would be better suited to its own submit. - Removed the bool parameter for FP4ClientUser and replaced it with a set of flags instead - Added a flag to allow FP4ClientUser to store data, either in binary or text format from a perforce command. Although in general this will be the result of a p4 print command. * PerforceSourceControlCommand - No longer assert if the command is not on the game thread if the operation indicates that it is safe to run on a background thread. * PerforceSourceControlModule - Register the 'DownloadFile' worker * PerforceSourceControlOperations - Add FPerforceDownloadFileWorker * PerforceSourceControlProvider - Adding implementation for ::TryToDownloadFileFromBackgroundThread. -- This method is thread safe compared to the normal ::Execute call due to: -- 1) This method does not accept any callbacks as the most common use of callbacks with ::Execute is to update the UI. -- 2) This method does not add the command to any of the internal queues nor rely on Tick to process the command. -- 3) The worker is invoked directly from the calling thread rather than as a background task. --4) This method does not allow commands that modify the cached states as this would be very difficult to manage without rewriting how all commands are processed to make sure that they are only run one at a time and the results processed in order. NOTE that async commands can be issued from the game thread and can in theory be run in any order on the p4 server depending on how the background task processing works out with no certainty as to the order the results will be processed in. It is unlikely that we will process results out of order but not impossible, but this is a pre-exisiting issue with the current API, extending it to be fully multithreaded will just make it worse. -- Note that we do not explicity check if the command supports being called from a background thread, as creating the command will check that anyway. - Calling ::OutputCommandMessages is now thread safe. When called from the game thread it will issue it's output via FMessageLog as before but when called from a background thread we will use the UE_LOG macros instead. Marshalling all output in the same way is something we will need to solve when/if we make the entire API thread safe. * PerforceControlSettings - Improve thread safety when calling ::GetConnectionInfo - If the password is stored in the UI then this is not thread safe but that feature is hidden at the moment due to being unsecure. I am unsure if we want to move the password to be stored in a member variable that can be accessed from any thread and only updated via the UI or not. * SourceControlOperations - Add new FDownloadFile operation. - This can either download the file(s) to FSharedBuffers which can be accessed by calling ::GetFileData OR directly to a directory on disk if the target directory is supplied as part of the constructor. * ISourceControlOperation - Add a new base method CanBeCalledFromBackgroundThreads (false by default) which can be overriden by derived classes and return true to indicate that the operation can be run from a background thread. This is intended for use by FDownloadFile with the perforce source control provider in lieu and making the API fully thread safe. * PerforceSourceControl.uplugin - Move the perforce plugin to load as early as possible as if Mirage is to use it then we need it to be avaliable before we start loading any potentially virtualized data in packages. [CL 16346666 by paul chipchase in ue5-main branch] |
||
|
|
2bb7495a45 |
- Added new, delete, edit changelist commands
- Added revert unchanged on changelists & files - Added changelist parameter to the Execute method of ISourceControlProvider (& updated all derived classes) - Fixed style problem in the Perforce settings dialog #rb sebastien.lussier [CL 15128504 by julien lheureux in ue5-main branch] |
||
|
|
6be153a555 |
Added initial support for changelists to the source control providers
#rb julien.lheureux [CL 15039900 by Sebastien Lussier in ue5-main branch] |
||
|
|
5b82f15def |
Copying //UE4/Dev-RenderPlat-Staging@11388153 to //UE4/Main
#rb none #rnx [CL 11388545 by Rolando Caloca in Main branch] |
||
|
|
2ecf4f9708 |
Merging //UE4/Dev-Main@10877709 to Dev-RenderPlat-Staging(//UE4/Dev-Rendering)
#rnx #rb none [CL 10895568 by Juan Canada in Dev-RenderPlat-Staging branch] |
||
|
|
471d972e62 |
Updating copyright for Engine Developer.
#rnx #rb none #ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902 #ROBOMERGE-BOT: (v613-10869866) [CL 10870584 by ryan durand in Main branch] |
||
|
|
e330479d73 |
Symbols are now hidden by default for Linux/Mac
Add support for MODULE_VTABLE for exposing the VTable (Also optionally if enabled RTTI) info for a given type for clang (Linux/Mac) Rename command line arg bHideSymbolsByDefault to bPublicSymbolsByDefault, as well as now add support for setting this change the BuildConfiguration.xml file Started from Github PR #3351 though a different way to go about it #jira UE-42635 #rb Arciel.Rekman, Steve.Robb, Ben.Marsh, Michael.Trepka #fyi Chris.Bunner, Chris.Gagnon [CL 4923631 by Brandon Schaefer in Dev-Editor branch] |
||
|
|
8fc25ea18e |
Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none [CL 4676797 by Chris Gagnon in Dev-Editor branch] |
||
|
|
d90da4ab1a |
Merge to Dev-Main for 4.20 @ 4090813
#rb #rnx #lockdown Nick.Penwarden [CL 4091081 by Marc Audy in Main branch] |
||
|
|
19f8663b5a |
Copying //UE4/Dev-Enterprise to //UE4/Dev-Main (Source: //UE4/Dev-Enterprise @ 3972172)
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3821754 by Jamie.Dale
[Python] Class property conversion now goes through NativizeClass/PythonizeClass
This allows it to coerce from Python wrapped object types
Change 3833107 by Patrick.Boutot
Added functions to fill an existing DataTable from an existing CSV/JSON file.
Change 3835044 by Aaron.Carlisle
Exposure for asset_import_data (editor property) and it's functions: extract_filenames and get_first_filename.
Change 3835466 by Patrick.Boutot
Hide function from Python that need special compile command to be executed by the VM.
Change 3839237 by Jamie.Dale
Added a way to inspect the full chain of properties that are currently being serialized by an archive
You used to only have access to the leaf-most property, and while you could use its outer chain to inspect other properties within the same object/struct, you couldn't always get the full chain (eg, if you had an object containing a struct).
Change 3839974 by Jamie.Dale
Make sure that SerializedProperty is copied correctly, as SetSerializedPropertyChain may set it to something else
Change 3842311 by Jamie.Dale
Fixing potential null level assert
Change 3842313 by Jamie.Dale
Updated settings editor to handle external properties
Change 3842316 by Jamie.Dale
Allowing a console command to be given to GEditor/GEngine even if there's a player
CL# 1848982 said it was to prevent multiple execution of stat commands, however that no longer seems to be an issue.
Change 3842867 by Jamie.Dale
Added a way to generate diffs from editor transactions
The notifications from these diffs are send to UObject::PostTransacted and FCoreUObjectDelegates::OnObjectTransacted.
These notifications are typically generated when a transaction is "finalized", but can also be generated from "snapshots" (eg, to trap nodes being dragged in the world). They're also generated from normal undo/redo events.
Change 3844428 by Patrick.Boutot
Move the SetMaterial code from the StaticMeshEditor to StaticMesh to be reusable by script.
Change 3845966 by Jamie.Dale
Added support for minimal game RPC worlds
These can be created in the editor and engine and exist to allow RPC communication via Unreal Networking in a way that is sandboxed from any other worlds that may be loaded (like the main game world)
Change 3848844 by Patrick.Boutot
Expose EComponentMobility to blueprint.
Change 3854616 by Patrick.Boutot
Add Custom way time step the engine loop. Will be used by the Synchronization of media for enterprise.
Change 3856650 by Jamie.Dale
Fixed a bug where transaction finalization could miss changes since the last snapshot
Change 3864951 by Patrick.Boutot
Fix ghost asset in Content Browser when an asset is added and renamed before the RecentlyAddedAssets list had a chance to be processed.
Change 3867158 by JeanMichel.Dignard
UBT
- Added the ability for dll programs to export symbols.
#jira UEENT-541
Change 3872342 by Jamie.Dale
Merging static analysis fixes from 4.19
Change 3879305 by Jamie.Dale
Improved the processing of py files from exec commands
The old logic used to just test if the entire command was a .py file. The new logic extracts out the first token and sees if that's a .py file, and if it is, treats the remaining data as extra arguments.
Change 3879306 by Jamie.Dale
Added a minimal commandlet for invoking Python scripts
Change 3881631 by Jamie.Dale
Added basic RTTI to Python meta-data types
Change 3885384 by Jamie.Dale
[Python] Prevent glue code using reserved names
Change 3888957 by Patrick.Boutot
In MediaPlayer, only create a PlayerFacade & Playlist when it's not a ClassDefaultObject.
The MediaPlayerFacade is a MediaTickable. That trigger the tick thread to be awake even if there is no Media playing.
Change 3888961 by Patrick.Boutot
Fix FInterval::IsValid return type.
Change 3888980 by Patrick.Boutot
Modification to Media and MediaAsset to support MediaSmith. The TInterval<int64> will be changed into TTinterval<FTimespan> UEENT-947. MediaSampleQueue's critical section will be change into an atomic operation UEENT-948.
Change 3889165 by Patrick.Boutot
Fix build. Missing include for Timespan. Introduce with CL 3888980.
Change 3889261 by Jamie.Dale
[Python] Fixing some more name conflicts in generated code
Change 3889504 by Darren.Pegg
Add option to change PreferredPixelFormat
Change 3891193 by Patrick.Boutot
Fix build. Missing include for Interval. Introduce with CL 3888980.
Change 3897108 by Patrick.Boutot
TTinterval use it own traits. Create a Interval traits for Timespan.
#jira UEENT-947
Change 3899669 by Jamie.Dale
Fixed Functions sometimes being exposed to Python as if they were Structs
Change 3900692 by Jamie.Dale
Removed some boilerplate associated with wrapping a basic type to Python
You can now derive from TPyWrapperBasic to wrap a type that is simply a value copied into Python (see FPyWrapperName and FPyWrapperText for an example)
Change 3901066 by conan.reis
UE4 editor script bindings (Cobra) and helper functions for version control
- exposed SourceControl class with common source control methods and associated SourceControlState structure
- commands have smart file strings that can convert from any of fully qualified path, relative path, long package name, asset path or export text path (often stored on clipboard)
- commands store any errors in a shared error text object which is optionally printed to the error log
- renamed some calls across the UE4 codebase to USourceControlHelpers::CheckOutOrAddFile() from USourceControlHelpers::CheckOutFile()
- included Python test script for source control commands including that auto-creates test files as needed and passes various types of files to test as command line arguments. Any unexpected results displays error messages.
Change 3901388 by Jamie.Dale
Minimal Slate hooks for Python
Change 3901456 by Jamie.Dale
Added missing file
Change 3901549 by Jamie.Dale
Removing some more Windows defines that were causing build issues
Change 3904518 by conan.reis
Source Control
- ensured that "check if modified" flag is set whenver getting source control state in USourceControlHelpers::QueryFileState() which was needed when using Perforce source control provider
Change 3905612 by Francis.Hurteau
Optimize RemoveDuplicates somewhat using a TSet
#jira UEENT-217
Change 3912626 by Jamie.Dale
Fixed ShouldExcludeDerivedClasses option not working
RecursiveClassesExclusionSet requires a base ClassNames entry to operate on when filtering.
Change 3917739 by Jamie.Dale
Output Log suggestions list is now clamped to the work area width of the monitor that hosts the widget
Change 3917744 by Jamie.Dale
Changed generated code to reference the UProperty and UFunction directly, rather than constantly look them up by name
Names were originally used because UHT couldn't access the objects when it registered the glue code, but now that we generate at runtime via reflection, we already have the relevant objects available, and caching them the glue structs helps performance at both generation time and runtime.
Change 3918832 by Jamie.Dale
Removed field iteration from Python function calls
We now cache the input and output parameters for all function calls (methods, get/set, and delegates) and use this rather than iterate the struct fields.
Change 3920648 by Patrick.Boutot
Remove the bottom right part of the windows border of the grabbed frame when in the editor. Tested in the standalone, windowed and full screen.
Add option to request a FlushOnDraw on the viewport. Flushing in SDI output flow decreases the performance by ~10ms. SDI output is synchronized and the engine tick follows that synchronization.
Change 3921396 by Jamie.Dale
Split up the generated type data to correspond to the type being wrapped
A lot of types can just use the minimal set, but classes and structs have some extra data.
Change 3921619 by conan.reis
- add delegate to FSourceControlWindows::ChoosePackagesToCheckin() that gives info for result, result description, files added, files checked in and flag indicating whether files were checked out again.
- also added result info to FSourceControlWindows::PromptForCheckin()
#jira UE-55255
Change 3921624 by conan.reis
Removed Source Control common files from pre compiled header
- main changes are in UnrealEdPrivatePCH.h, UnrealEdSharedPCH.h, SouceControlWindows.h and the added SouceControlWindows.cpp
- remaining files have includes changed to accomodate
Change 3921958 by conan.reis
Fix attempt for incude file dependency needed by some build configurations (likely PCH disabled) caused by CL3921619
Change 3922740 by conan.reis
Included SourceControlOperations.h and SourceControlHelpers.h back in ISourceControlProvider.h though it does not need them since other files that were including ISourceControlProvider.h have come to expect their inclusion.
They were previously removed in CL3921624
Change 3923375 by Jamie.Dale
Added optimized FString <-> icu::UnicodeString conversion for platforms using UTF-16 native strings
Change 3926547 by Jamie.Dale
Added support for struct method "hoisting"
This allows you to tag a helper function that takes a struct as its first argument with the ScriptMethod meta-data (optionally providing a new name) to "hoist" that helper function to be a method of the struct it operates on when wrapped for Python.
Change 3927050 by conan.reis
Source control - ensured that ISourceControlProvider::Execute(FConnect, EConcurrency, FSourceControlOperationComplete) delegate is called on initial connection even if it fails immediately. Modified Perforce, Git and Subversion source control providers
#JIRA UE-55256
Change 3929268 by conan.reis
- fixed case in Perforce source control code where the server available flag was set even when the server was not successfully connected
- removed Perforce error message about file folders outside of the workspace client mappings
- clarified comments for ISourceControlProvider::IsEnabled() and ISourceControlModule::IsEnabled()
#JIRA UE-55254
Change 3931024 by Rex.Hill
Expose FBX and Texture import to python
Change 3931273 by Rex.Hill
Hide re-import slate notification pop-up during python automated asset import
Change 3931368 by Jamie.Dale
Stopped bools coercing to numeric types in Python nativization
Change 3931374 by Jamie.Dale
Added support for struct math operator "hoisting"
This allows you to tag a helper function that takes a struct as its first argument with the ScriptMathOp meta-data (providing a potentially semi-colon separated list of operators to map to) to "hoist" that helper function to be a math operator of the struct it operates on when wrapped for Python.
Change 3932586 by Rex.Hill
Removed file read into unused memory buffer during Fbx import
Change 3934308 by Jamie.Dale
Added a public interface for the Python plugin
Very basic, just lets you query if Python is compiled in, and lets you execute Python commands like you would via the Output Log.
Change 3935088 by conan.reis
- Added info/warning and error message storage to all the source control operation structures so additional information can be made available.
- Added ISourceControlOperation::GetResultInfo() which returns the modified control structures (mentioned above) with appended info/warning messages and error messages and implemented its use in all source control operations in Perforce, Git and Subversion.
#JIRA UE-55257
Change 3936668 by Rex.Hill
#jira UE-55985
Avoid re-allocation of memory buffer holding file bytes during asset import
Change 3940596 by Rex.Hill
#jira UE-55989 Optimize skeletal mesh import performance scaling
Overlapping vertex check was O (N^2)
100k vertex mesh took ~15 seconds to perform overlap step now takes 0.023 seconds
Change 3942629 by Rex.Hill
#jira UE-55995 Read fbx file only once during import
Fixes a memory leak of FbxScene and reduces wait time during import.
Change 3942884 by Rex.Hill
Python asset import can now customize destination asset name
Change 3946278 by Jamie.Dale
Added stricter conversion for math operator arguments
PyConversion now returns FPyConversionResult rather than bool, which will tell you not only whether a conversion succeeded or failed, but also whether type coercion was applied during the conversion.
This allows the operator stack evaluation to run a first pass looking for an exact argument match, before falling back to a coerced match if available. This allows operators to apply correctly to coerced types (eg, int vs float overloads).
Change 3948455 by Jamie.Dale
Added generic Tick function to FPythonScriptPlugin
This can also handle init logic for after the engine is fully initialized
Change 3948888 by Jamie.Dale
Added settings for the Python plugin
You can now define start-up scripts to execute once the engine is initialized, additional system paths for Python, and whether you want to enable developer mode (which will enable things like deprecation warnings).
Change 3948982 by Jamie.Dale
Fixed Python 3 build error caused by CObject being removed in Python 3.2
Change 3949614 by Francis.Hurteau
Create a camera cut track from the camera switcher camera index animation curve when importing a fbx in sequencer
#jira UEENT-1053
Change 3950829 by Rex.Hill
Update error message to be more specific when ENGINE_API keyword is found before 'static' keyword for a UFUNCTION
Change 3953452 by Jamie.Dale
Fixed some dependencies
Change 3953645 by Jamie.Dale
Fixed Python parameter packing treating bool output paramers as potential return values
void GetState(bool& OutState) would have previously triggered the code for packing output for a function that returns a bool.
Change 3953850 by Jamie.Dale
Fixed doc string generation for a function with multiple output paramters and no return value
Change 3954279 by Jamie.Dale
Initial support for exposing deprecated properties and functions to Python
This handles properties and functions that are directly deprecated. We still need to handle the cases where they're renamed and a redirector is left.
Change 3954922 by Rex.Hill
Expose UnloadPackages to python
Change 3955209 by Jamie.Dale
Initial support for exposing deprecated classes to Python
Change 3955248 by Jamie.Dale
Added a way to load Unreal modules via Python
unreal.load_module("modulename")
Change 3955561 by Rex.Hill
Expose asset export to python
Change 3956068 by Rex.Hill
Linux compile fix.
Change 3960449 by Rex.Hill
Fix automated test using bCombineMeshes
Change 3960495 by Patrick.Boutot
Add a temporary menu to show the MetaData of an asset.
The menu will need to be updated to have a look and feel of the Detail View and support edition at one point.
Change 3961599 by Rex.Hill
Reduced peak memory during import of meshes related to duplicate vertex tracking
Change 3962104 by Rex.Hill
Disable import mesh overlapping corners memory optimization to because it can change uv generation
Change 3962507 by Rex.Hill
Fix uv generation
Change 3965285 by Rex.Hill
Add support for FBX export as ASCII
#jira UE-56465
Change 3965287 by Rex.Hill
Forgotten file, fbx export as ascii
Change 3966772 by Simon.Tourangeau
Fix MaterialExpressionFunctions for ExternalTexture support
Change 3967014 by Jamie.Dale
Added a way to get the CDO in Python
Wrapped objects now have a get_default_object class method
Change 3967151 by Jamie.Dale
Added stats to track Python generation time
Change 3968006 by Simon.Therriault
Media Samples
- Removed Locks and Min/Max SampleTime from queues
- Added methods to fetch NextSampleTime and SampleCount in queues
- Added MediaSource base class for players that want to be time synchronized
#jira UEENT-948
Change 3969119 by Patrick.Boutot
Add delay functionnality to MediaPlayer to delay the frame by some time. It will allow more than one player to be start at the same time, played at the same frame but offset in relation to each other.
[CL 3972277 by Simon Tourangeau in Main branch]
|
||
|
|
7a0f229e8d |
Copying //UE4/Fortnite-Staging to //UE4/Dev-Main (Source: //Fortnite/Main/Engine @ 3876564)
#lockdown Nick.Penwarden #rnx #rb none [CL 3903710 by Marc Audy in Main branch] |
||
|
|
13d012685f |
Merging copyright update from 4.19 branch.
#rb none #rnx #jira [CL 3818977 by Ben Marsh in Staging-4.19 branch] |
||
|
|
d162beedcc |
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3431234)
#lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3323393 on 2017/02/27 by Ben.Cosh This fixes an issue with actor details component selection causing actor selection to get out of sync across undo operations #Jira UE-40753 - [CrashReport] UE4Editor_LevelEditor!FLevelEditorActionCallbacks::Paste_CanExecute() [leveleditoractions.cpp:1602] #Proj Engine Change 3379355 on 2017/04/04 by Lauren.Ridge Adding sort priorities to Material Parameters and Parameter Groups. If sort priorities are equal, fallback to alphabetical sort. Default sort priority is 0, can be set on the parameter in the base material. Parameters are still sorted within groups.Group sort priority is set on the main material preferences. Change 3379389 on 2017/04/04 by Nick.Darnell Core - Removing several old macros that were referring to EMIT_DEPRECATED_WARNING_MESSAGE, which is no longer defined in the engine, so these macros are double deprecated. Change 3379551 on 2017/04/04 by Nick.Darnell Automation - Adding more logging to the automation controller when generating reports. Change 3379554 on 2017/04/04 by Nick.Darnell UMG - Making the WidgetComponent make more things caneditconst in the editor depending on what the settings are to make it more obvious what works in certain contexts. Change |