Skip to content

PhotoModeFX for Unreal Engine 4. A complete, generic, unobtrusive, easy-to-use in game photographic system (PhotoMode) for Unreal Engine 4. Featuring HighResolution, Panoramic 360, Stereoscopic VR, Cubemap, 3DPhoto captures.

License

DarknessFX/PhotoModeFX

Repository files navigation

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

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

PhotoModeFX for Unreal Engine 4

A complete, generic, unobtrusive, easy-to-use in game photographic system (PhotoMode) for Unreal Engine 4.23.1 (and newer).

Project info/blog at https://dfx.lv/PhotoModeFX .

Features

  • Easy to use, add BP_PhotoModeFX to your level and is ready to use.
  • Moveable camera with free movement while game is paused.
  • 21 Filters with customizable settings, compatible with Deferred and Forward renderer.
  • Pre and Post events to notify the game when PhotoModeFX is starting/exiting.
  • HighResolution with Buffer Visualization screenshots (via ScreenshotTools plugin).
  • Panoramic (360) and Stereoscopic (VR) with Buffer Visualization screenshots (via PanoramicCapture plugin).
  • Capture and export Cubemaps.
  • Generate 3DPhotos (for Facebook).
  • Blueprint only, to easily package your project to any supported platform.
  • No tick events.
  • Following current UE4 Best Practices.

Requirements

Unreal Engine 4.23.1 or newer.
ScreenshotTools plugin (can be disabled if HighRes Screenshots aren't necessary).
PanoramicCapture plugin (can be disabled if Panoramic/Stereoscopic Screenshots aren't necessary).

Note for compatibility with Unreal Engine 4.26.1

CineCameraComponent Filmback nodes changed name from "Filmback Settings" to "Filmback" after UE4.23.1, to fix this error just create new nodes Get/Set using "Filmback" and move the connectors.

You can find this nodes inside BP_PhotoModeFX, Functions PMFX_UI_Filmback and PMFX_UI_SensorChanged.


Video Instructions:

How to Use

Download the Zip file.
Extract the files to any folder.
Delete the .git_img* folder (if you download/clone from main instead of release package).
Open PhotoModeFX.uproject in Unreal Engine. (double+click the PhotoModeFX.uproject file)
Open Content/PhotoModeFX/BP_PhotoModeFX and compile the blueprint (ignore warnings, fix the error mentioned above).
Open the included Content/PhotoModeFX/PMFX_SampleMap and play the level.
Press keyboard P key to start PhotoModeFX (you can change the default key and other settings on BP_PhotoModeFX Details panel).
If you like the features, you can migrate BP_PhotoModeFX to other projects (UE4 will migrate any dependencies too), add BP_PhotoModeFX to your main level and test on your project.

--
. PhotoModeFX project files are light weight with 5,659Kb (zipped) but ReadMe screenshots at .git_img folder raises it to 74,715Kb (zipped) .

Samples

Usage

GIF:

Video:

Capture Modes

Screenshot:

HighResolution Screenshot (scaled from 8K to 1K, displayed as 640p):

HighResolution Buffer Visualization Screenshots (scaled from 8K to 1K, to 216p 5x gallery, displayed as 640p):

HighResolution Buffer Visualization HDR Screenshot:
It's like the sample before but brighter and with .EXR file extension...

Panoramic 360 Screenshot (scaled from 2K to 1K, displayed as 640p):

Stereoscopic VR Screenshot (scaled from 2K to 1K, displayed as 640p):

Cubemap (scaled from 4096x2048 to 1280x640, displayed as 640p):

3DPhoto For Facebook (sample from 2k x 2 images [FinalColor 29.1Mb + SceneDepth 745KB], captured as 560p MP4, converted to 100MB GIF, optimized to 1/4 frames, compressed to 24MB GIF, displayed as 640p):

Filters

Blur:

Blur Fast:

Black & White:

ColorBlind:

Contrast:

CRT:

Curve:

Fade Distance:

Fade Sphere:

Flat Colors:

Gaussian Blur:

Greyscale:

Greyscale Back:

Greyscale Front:

Hue Shift:

Impress:

Isolate Color:

Kuwahara (Oil Painting):

Outline (Cartoon or Comics):

Pixelated:

Retro:

Versioning

v1.0 - Full Filters Tab with 21 filters, hided Sticker and Pose tab (feature creep, maybe in future). Full release.
v0.7.1 - Added HDRHistogram to Dev Tab, Fixed UI bugs, fine tune in some default values.
v0.7 - Included Filters Tab settings and controls. Moved UI Events to a Component to reduze PMFX blueprint file size.
v0.6 - Fixed "Cannot destroy CineCameraComponent" on exit. Better camera UI and positioning.
v0.5.2 - Fixed the License "Copyleft" on ReadMe to "Unlicense - Public Domain - Free for everyone and any use".
v0.5.1 - Small improvements on Panoramic+Stereoscopic default settings in Dev Tab.
v0.5 - Included RayTracing Tab settings and controls.
v0.4 - Included Effect Tab settings and controls.
v0.3 - 3DPhoto Material prefix. Screenshots samples to ReadMe.
v0.2 - New 3DPhoto (for Facebook) capture and settings. Fix on camera detection for pawns without camera component.
v0.1 - Alpha released.

TODO

  • Files and instructions to install as an Engine Template / "Add Feature or Content Pack" to easily add to any project.

Credits

Unreal Engine by Epic Games - https://www.unrealengine.com/ .
Video trailer uses UE4 Hour Of Code by Steve Isaacs, Brian Dickman and Ian Southwell - https://www.unrealengine.com/en-US/blog/learn-how-to-code-with-unreal-engine .
Screenshot samples uses UE4 Detective Office by Justin Mohlman - https://www.unrealengine.com/en-US/onlinelearning-courses/build-a-detectives-office-game-environment .
GIF video by 3dnchu @ymt3d - https://3dnchu.com/archives/photomodefx-for-ue4/ .
Filter BlurFast (adapted) from TouchKey9691 - https://forums.unrealengine.com/community/community-content-tools-and-tutorials/28458-radial-blur-postprocess-material?p=1541025#post1541025
Filter CRT (adapted) from - https://babylonjs.medium.com/retro-crt-shader-a-post-processing-effect-study-1cb3f783afbc and https://www.shadertoy.com/view/XtlSD7
Filter GaussianBlur (adapted) from https://www.raywenderlich.com/57-unreal-engine-4-custom-shaders-tutorial
Filter Kuwahara (adapted) from https://www.raywenderlich.com/100-unreal-engine-4-paint-filter-tutorial
Filter Pixelated (adapted) from 8 Bit Pixellize in Unreal Engine 4 - https://www.youtube.com/watch?v=GLJC1qG3oK4
Filter Retro (adapted) from @AlanNoon - https://twitter.com/AlanNoon/status/1297774377547845632

License

@Unlicense - Public Domain - Free for everyone and any use.

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

About

PhotoModeFX for Unreal Engine 4. A complete, generic, unobtrusive, easy-to-use in game photographic system (PhotoMode) for Unreal Engine 4. Featuring HighResolution, Panoramic 360, Stereoscopic VR, Cubemap, 3DPhoto captures.

Topics

Resources

License

Stars

Watchers

Forks