Code Monkey home page Code Monkey logo

dfoundryfx's Introduction

 .----------------.  .----------------.  .----------------. 
| .--------------. || .--------------. || .--------------. |
| |  ________    | || |  _________   | || |  ____  ____  | |
| | |_   ___ `.  | || | |_   ___  |  | || | |_  _||_  _| | |
| |   | |   `. \ | || |   | |_  \_|  | || |   \ \  / /   | |
| |   | |    | | | || |   |  _|      | || |    > `' <    | |
| |  _| |___.' / | || |  _| |_       | || |  _/ /'`\ \_  | |
| | |________.'  | || | |_____|      | || | |____||____| | |
| |              | || |              | || |              | |
| '--------------' || '--------------' || '--------------' |
 '----------------'  '----------------'  '----------------' 

       DarknessFX @ https://dfx.lv | Twitter: @DrkFX

DFoundryFX plugin For Unreal Engine


About

DFoundryFX plugin feature customizable performance metric charts (including Shipping builds), Shader compiler monitoring and STAT commands control panel for Unreal Engine GameViewports. While the plugin is enabled you always have access to the charts, controls and settings directly in your game viewport, this plugin don't need actors or objects to be created in your project.

Installation

Use precompiled plugin (Unreal Engine 5.1 or newer)

. Download the latest release.
. Unzip the file in your UEFolder\Engine\Plugins.
. Start Unreal Engine.
. Menu Tools > Plugins.
. Enable in Installed > Performance > DFoundryFX .
. Restart Unreal Engine.
. Play your project, DFoundryFX window and charts will show up.

Build from Example

. Visit DFoundryFX_Example repo , download Setup.bat and execute.
. Play your project, DFoundryFX window and charts will show up.

Build from Source

. Create a new folder. ex: *Plugins*
. Git clone this project with sub-modules. ex: git clone --recursive https://github.com/DarknessFX/DFoundryFX.git
. Open your "Developer Command Prompt for VisualStudio" (Program Files\Microsoft Visual Studio\Common7\Tools\VsDevCmd.bat).
. Execute Plugins\DFoundryFX\Source\ThirdParty\ImGui\Build.bat .
. Copy Plugins\ folder to your project folder (or to your Engine\Plugins folder).
. Open your project in VisualStudio and build.
. Open your project, enabled DFoundryFX in Plugins tab (Installed > Perfomance > DFoundryFX).
. Play your project, DFoundryFX window and charts will show up.

Credits

Unreal Engine from Epic Games - https://www.unrealengine.com/
DearImGui from @ocornut - https://github.com/ocornut/imgui
ImPlot from @epezent - https://github.com/epezent/implot
MetalWorking Icon from TheNounProject - https://thenounproject.com/icon/metalworking-1563039/
ImGuiPlugin from @amuTBKT - https://github.com/amuTBKT/ImGuiPlugin
UnrealEngine_ImGui from @sronsse - https://github.com/sronsse/UnrealEngine_ImGui
Rama code multi threading from Rama - https://dev.epicgames.com/community/learning/tutorials/7Rz/rama-code-multi-threading-in-ue5-c

License

@MIT - Free for everyone and any use.

DarknessFX @ https://dfx.lv | Twitter: @DrkFX
https://github.com/DarknessFX/DFoundryFX

dfoundryfx's People

Contributors

d11dhenderson avatar darknessfx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

dfoundryfx's Issues

Crashes due to unsafe access to delegates and game framework classes

Hello,
We've noticed a number of places where the plugin crashes.

Win64_Test!APlayerController::GetMousePosition() Thread.cpp:265
Win64_Test!FDFX_Thread::ImGui_ImplUE_Render()
Win64_Test!TBaseRawMethodDelegateInstance<0,FDFX_Thread,void __cdecl(AHUD *,UCanvas *),FDefaultDelegateUserPolicy>::ExecuteIfSafe()
Win64_Test!AHUD::PostRender()

this seems to be the most prevalent we continue to get but there is another when closing the editor which occurs in FDFXThread::OnViewportClosed() line 145.

both of our crashes seem to be because of delegates persisting longer than their depended objects do or because of expecting game framework classes to exist when they don't.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.