Commit Graph

99 Commits

Author SHA1 Message Date
Marc Audy
5f358fb308 Do not disable audio when an audio devices that support > 6 channels is attached
[CL 2251887 by Marc Audy in Main branch]
2014-08-11 16:31:36 -04:00
JJ Hoesing
8391b873d4 Interface level changes in preparation for Oculus 0.4 integration.
#codereview Nick.Whiting

[CL 2244782 by JJ Hoesing in Main branch]
2014-08-05 17:36:56 -04:00
Keith Judge
4373954f91 Remove CMASK compression disabling for Xbox One as the corruption is fixed in the July QFE1.
[CL 2238422 by Keith Judge in Main branch]
2014-07-31 11:49:21 -04:00
Graeme Thornton
9e0c448386 Mobile Preview Continued Work:
* For several preview components (cascade + a couple of animation previews), don't create a separate FXSystem for the preview world. Just use the one created internally by the world
* Several bug fixes and improvements to dynamic feature level switch
* Continued conversion of code that references to global feature level.

#codereview Nick.Penwarden

[CL 2229679 by Graeme Thornton in Main branch]
2014-07-24 05:23:50 -04:00
Jeff Campeau
7c3470dae9 Remove unused duplicate define
[CL 2227548 by Jeff Campeau in Main branch]
2014-07-22 16:58:44 -04:00
Gil Gribb
18d525f874 UE4 - parallel rendering, reworks command lists
[CL 2226868 by Gil Gribb in Main branch]
2014-07-22 08:29:38 -04:00
Gil Gribb
fe1b255d99 UE4 - defer deletes of RHI resources and some parallel prototyping
[CL 2218215 by Gil Gribb in Main branch]
2014-07-15 07:34:34 -04:00
Matthew Griffin
c0d29a957c Multi channel support for Opus
Implemented CookSurround function for AudioFormatOpus, refactoring as much common code from the standard Cook into re-usable functions.
Changed OpusAudioInfo class to use a multistream decoder for all sounds, as 1 and 2 channel sounds can still be decoded by it. Just had to create an array of mappings that would take the internal Opus format and give back PCM data in the order that Unreal expects.
Also made the OpusDecoderWrapper a true wrapper so that you don't have to use any opus functions outside of it and it will not function if WITH_OPUS is not defined.
Added a virtual function to the CompressedAudioInfo interface, to check whether its uncompressed data will be in the Vorbis format. This is to make sure that code currently just checking whether there is a DecompressionState can now be sure that the Vorbis format is being used before routing sound to different speakers.
Made sure that you can't cause any problems by adding or removing a SoundWave from the Audio Streaming Manager more than once. Also rearranged where sounds are added to the manager so that it is only done in one place and it's safe when changing quality triggers recompression/splitting.
Added a global multidimensional array to store all the Vorbis channel orderings as they needed to be used in multiple places.
Added Logging and Memory tracking for the streaming process.

[CL 2217839 by Matthew Griffin in Main branch]
2014-07-15 06:09:13 -04:00
Bob Tellez
a399d885b6 Merging CL#2188206 using UE4-Fortnite-To-UE4
MCPInfo:
  "app" : "fortnite",
  "moduleName" : "Fortnite-PublicService",
  "branch" : "TRUNK",
  "build" : "240",
  "cln" : "2172251",
  "version" : "UNKNOWN"

[CL 2215307 by Bob Tellez in Main branch]
2014-07-14 19:41:38 -04:00
Graeme Thornton
747d2a9b9d Mobile Preview In Editor
- Material editor preview nodes now work when the editor is in es2 mode
 - Make editor primitives work in ES2 mode
 - Fix slate font rendering in ES2 mode
 - Remove ES2 shader de-gamma when in the editor
 - Add a new linear sampler type for linear textures
 - Various fixes for dynamic feature level switching
 - When in an emulated feature level mode, display some text in the level editor viewport saying what feature level we're running
 - Removed feature level parameter from USkeletalMesh::GetResourceForRendering. Not used for anything
 - ParticleVertexFactoryPool is now creates feature level specific vertex factories.

[CL 2187558 by Graeme Thornton in Main branch]
2014-07-10 10:39:54 -04:00
Gil Gribb
a5e5aef45d UE4 - cleaned up the recursive RHI usage for command lists and added these RHI mthods as queuable RHICopyToResolveTarget, RHICLear, RHIClearMRT, RHIClearUAV
[CL 2181497 by Gil Gribb in Main branch]
2014-07-09 11:02:23 -04:00
Marcus Wassmer
7166eef235 Disable CMASK on XB1
Fixes 'checkerboarding' artifact.  Needs to be re-enabled when we determine the root cause of the CMASK corruption.

[CL 2171434 by Marcus Wassmer in Main branch]
2014-07-07 19:55:20 -04:00
Nick Penwarden
bf28b61151 RHI texture references are now managed with an FRenderResource.
Last render time for textures can now be exposed via an FLastRenderTimeContainer provided at construction time. Only implemented for texture references. Eventually this can unify last render time for normal textures and texture references.

[CL 2170350 by Nick Penwarden in Main branch]
2014-07-07 13:21:55 -04:00
Nick Penwarden
7685beb76e When running with D3D debug, clear state and flush the device to get rid of spurious live objects in D3D11's report.
[CL 2170277 by Nick Penwarden in Main branch]
2014-07-07 12:41:43 -04:00
Matthew Griffin
c28dea244e Splitting format specific classes out of AudioDecompress.cpp/h
New files added to contain FVorbisAudioInfo and FOpusAudioInfo, added all necessary includes
Added a few more checks for whether the target platform supports audio streaming where appropriate
Moved #define to .h file as it was being used in two .cpp files (working because of unity build)

[CL 2137973 by Matthew Griffin in Main branch]
2014-07-04 09:47:36 -04:00
Nick Whiting
a59f371e8d #vr Integration of Oculus timewarping and SDK rendering
[CL 2133287 by Nick Whiting in Main branch]
2014-07-03 21:55:37 -04:00
Matthew Griffin
7b37c1507d Preventing full data from being cooked in streaming sounds
Added platform feature/property for audio streaming so that it's not used on platforms that don't support it yet
Prevent full data from being cooked if sound is streaming AND streaming is supported on the cooked platform
Prevent streaming chunks from being cooked if cooked platform doesn't support streaming
Prevent the Resource data from being initialized and full data size being added to stats if sound is streaming

[CL 2130171 by Matthew Griffin in Main branch]
2014-07-03 06:07:49 -04:00
Josh Markiewicz
b37f250b75 #Fort weekly dev->main using approved smoketest CL#2118999
UE4-Fortnite-CL-2118999
CL# 2118999
MCP CL# 2117450
Linux Dedicated Server
Backend: Testing

  "app" : "fortnite",
  "moduleName" : "Fortnite-PublicService",
  "branch" : "TRUNK",
  "build" : "217",
  "cln" : "2117450",
  "version" : "UNKNOWN"

[CL 2123380 by Josh Markiewicz in Main branch]
2014-07-01 11:28:39 -04:00
Matthew Griffin
2ff606464b Added Audio Streaming Manager and streaming audio playback
Audio Streaming Manager will keep track of SoundWaves that are marked for streaming and any sound sources that are using those waves.
Added functionality to all Sound Buffers to report which chunk of audio they are currently reading from, which the manager will use to request the current and next chunk be loaded in memory.
Added a struct to contain all of the additional information needed for a Streaming SoundWave and set off requests, which the manager will also keep track of to avoid increasing the memory size of all SoundWaves.
Tidied up the Opus Decompressor to reduce the amount of repeated code and share the basic functionality for streaming and non-streaming usage.
Set XAudio sounds up to use streaming data, with a function added to the audio device so that other platforms won't try to make use of it for the moment.

[CL 2123061 by Matthew Griffin in Main branch]
2014-07-01 05:42:02 -04:00
Gil Gribb
c4f89eca29 UE4 - add ERCT_SetViewport, ERCT_SetScissorRect, ERCT_SetRenderTargets
[CL 2122136 by Gil Gribb in Main branch]
2014-06-30 16:05:23 -04:00
Gil Gribb
1d50eae0de UE4 - rework RHI user-facing APIs to be safer and incorporate the desired sematics
[CL 2119499 by Gil Gribb in Main branch]
2014-06-27 11:07:13 -04:00
Graeme Thornton
9576f1f08d Create and use auxilliary depth texture in the forward rendering path when simulationous depth test/read isn't supported on the target hardware.
Fixes TTP 335869 - UE4: RENDERING: CRITICAL: EDITOR: CRASH: Occurs when launching mobile preview on the StarterMap using the Asus UX31 Sandy Bridge Ultrabook

[CL 2119491 by Graeme Thornton in Main branch]
2014-06-27 10:57:41 -04:00
Laurent Delayen
a377ef0cf4 Dev to Main from cl #2110143
[CL 2118596 by Laurent Delayen in Main branch]
2014-06-26 17:26:58 -04:00
Jeff Campeau
8a02c47ece Fix crash when loading between maps
Resources being referenced by the state cache were being released before finished being used.
#codereview Keith.Judge

[CL 2116884 by Jeff Campeau in Main branch]
2014-06-25 13:35:34 -04:00
Nick Penwarden
0b5d3354fb Provide native device access from the RHI, useful for 3rd party plugins that wish to directly render using the underlying device. Currently only exposed for D3D11.
Based on GitHub pull request 199 by CoherentUE4

[CL 2116771 by Nick Penwarden in Main branch]
2014-06-25 11:39:23 -04:00