confettifx / the-forge Goto Github PK
View Code? Open in Web Editor NEWThe Forge Cross-Platform Rendering Framework PC Windows, Steamdeck (native), Ray Tracing, macOS / iOS, Android, XBOX, PS4, PS5, Switch, Quest 2
License: Apache License 2.0
The Forge Cross-Platform Rendering Framework PC Windows, Steamdeck (native), Ray Tracing, macOS / iOS, Android, XBOX, PS4, PS5, Switch, Quest 2
License: Apache License 2.0
Hi,
would be nice if support for disabling Vsync on Metal could be added.. I think that this may require MacOS 10.13 and/or Metal 2 features but could be good to see Compute and ExecuteIndirect samples make use of full GPU load..
also adding support for others backends: Vulkan and D3D12 would be nice..
just opening here for visibility:
Vega 56 Macos 10.13.2 Xcode 9.3 beta
#4 (comment)
Hi, i just discovered The Forge framework could be a nice library for my starting project and i need to search an a good long-term stack, i'm around The Forge library or bs::framework, and empirically i saw some details compared with bs::framework, Seems the renderer itself is really low-level, the renderer is mostly C-style functions and pointers, and the engine build system is crude but simplistic making it easy to replace with my own, unlike bsf, which needs a lot of tunning and heavy modifications.
I like you try to avoid to use the Standard STL with TinySTL. Also i'm aiming to background resource loading (textures, meshes, etc) and how feasible will be task scheduling for gameplay, rendering, and other middleware (Audio, AI, etc).
There's concept of Technique, Materials and Pass?, otherwise they can be implemented easily as an high-level layer with the APIs provided by the framework?
Thanks.
Debug utils now replace both debug report and debug markers. Debug report is now deprecated.
Is there any chance you could fix logging on macOS? Is there any other way of getting the performance score (some avg fps)?
VisibilityBuffer example is not rendered correctly on MacBook Pro 13,1 on 10.13.2 (17C88) - Intel SKL graphics.
Changing the parameters does not change much (or makes it even worse). Any clues?
Hi,
just read about Nsight graphics update at Siggraph with Vulkan raytracing support (altough no drivers yet) and seeing you support already DXR wanted to ask if you plan to support Vulkan raytrace in the Forge in addition to DXR..
better yet (and seeing http://confettishadertranslator.azurewebsites.net) would be if you can support translation from DXR HLSL shaders to Vulkan GLSL raytrace extensions (yet to be published) so from one shader we are able to target Vulkan too..
Have a Volta card to test once Vulkan drivers are out..
thanks..
The main renderer isn't namespaced, so adding to an existing system can hit some name clashes.
Adding something like
namespace TheForge{}
around the main class definitions would make it easier to use with other systems.
I've tested the Unit Tests on my Mac Pro 2010 / Vega 56 running MacOS Mojave 10.14.4.
Xcode: Version 10.2.1 (10E1001)
The examples are running fine except the 04_ExecuteIndirect.
It crashes directly at the beginning of
void AsteroidSimulation::Init(uint32_t rngSeed, uint32_t numAsteroids, uint32_t numMeshes, uint32_t vertexCountPerMesh, uint32_t textureCount)
The error reported by the debugger is:
Thread 1: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
Can anybody help?
Regards
getUSec() and getMSec() functions seem to be used using the following code :
double millisec = (double)getMSec() / (double)getTimerFrequency()
double microsec = (double)getUSec() / (double)getTimerFrequency()
If that's correct I believe getUSec should return return curr.QuadPart * (int64_t)1e6;
instead of return counter.QuadPart;
getMSec code is in line with the assumed usage.
(Delete this issue)
Forgive me if I’m being thick but I can’t find any doc references in the repo, wiki. Are there any docs available somewhere?
Hello,
I haven't tried Forge yet. But it seems very intriguing to me. Wondering if you are planning to support OpenGL/GLSL 4.0+ as I do not see it in the supported APIs on any platform. Could you please clarify this?
Thanks in advance!
The-Forge/Common_3/Renderer/Vulkan/Vulkan.cpp
Line 3842 in f6d52d7
Should be waitSemaphoreCount = waitSemaphoreCount > MAX_PRESENT_WAIT_SEMAPHORES ? MAX_PRESENT_WAIT_SEMAPHORES : waitSemaphoreCount;
I can't see any cmake / solution / release libraries for The Forge. Samples are great, but they just refer indirectly to source code... So how can I use The Forge as dependency?
Thanks, regards, Nikita.
Hi,
Our current D3D11-based engine is using tiled resources.
Does The Forge provide any abstration layer for its abstract equivalent (reserved resources in D3D12, etc.) ?
Thanks a lot!
Cheers,
Greg
What is the best way to set up rendering to multiple full-screen monitors using a single GPU adapter in The Forge? Do you have an example that uses multi-monitor?
The-Forge/Common_3/Renderer/Vulkan/Vulkan.cpp
Line 4763 in f6d52d7
The name of the function should be "vkCmdDrawIndirectCountAMD" instead of "vkCmdIndirectCountAMD".
The-Forge/Common_3/Renderer/Vulkan/Vulkan.cpp
Line 802 in 06a4343
ppBuffers should be replaced with ppTextures
The-Forge/Common_3/Renderer/Vulkan/Vulkan.cpp
Line 4845 in f6d52d7
At the end of the function, should call vkCreateIndirectCommandsLayoutNVX() with the previously filled VkIndirectCommandsLayoutCreateInfoNVX.
Now that both Win 1809 ,Windows SDK 17763 and 416.16 support it..
Looks like simple copy-paste error - the "08_Procedural"'s window name is called "07_Tessellation", and tool tip is also incorrect.
Hi,
I'm having an issue as per the title, I get the following error:
D3D12 ERROR: CGraphicsCommandList::SetGraphicsRootDescriptorTable: Resource state (0x40: D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE) of resource (0x000001ABA44DC580:'SceneDepth') (subresource: 0) is invalid for use as a PIXEL_SHADER_RESOURCE. Expected State Bits (all): 0x80: D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE, Actual State: 0x40: D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE, Missing State: 0x80: D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE. This validation is being enforced at bind during command list recording because the descriptor for this resource in the root signature is declared as DATA_STATIC_WHILE_SET_AT_EXECUTE. [ EXECUTION ERROR #538: INVALID_SUBRESOURCE_STATE]
I've called cmdResourceBarrier appropriately beforehand but it does not actually do anything due to this line:
if (!(pTexture->mCurrentState & pTransBarrier->mNewState) && pTexture->mCurrentState != pTransBarrier->mNewState)
with:
pTexture->mCurrentState = RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE (64)
pTransBarrier->mNewState = RESOURCE_STATE_SHADER_RESOURCE (192)
so the first part of the if statement is false.
Thanks
I know my setup might not be supported but I've seen what might be a Windows7/10 difference and so this is more of a FYI as it does not effect the core of The-Forge.
Chased the problem down to FpsCameraController::onMouseMove() and the call to setMousePositionRelative(). The setMousePositionRelative() calls the Win32 SetCursorPos(), Windows post's a WM_MOUSEMOVE which in turn ends up calling FpsCameraController::onMouseMove().
If I comment out setMousePositionRelative() it works just the same as my OSX/Mac Pro
I noticed a lot of ASSERT(format <= ImageFormat::D32F) messages while running Visibility_Buffer (and I think some of the other examples?) so I had a look.
The problem is format == ImageFormat::BGRA8 which is < ImageFormat::D32F so the return value is junk as it's out of range of bytesPP[]
I've done a if(format == ImageFormat::BGRA8) { return 4; } but should proper range checking be done?
I noticed with the font rendering that vulkan is slightly blurry compared to d3d12. You can see in the screenshots below the green color is also slightly different between the two. Depending on what background color and font color, the difference can be really noticeable. If you save the two images below and quickly flick between them you will see the problem.
The meshes directory is missing in the UnitTestResources folder. The .gitignore is playing tricks with the mesh obj files i would be guessing :)
Now 10.13.3 is stable but I have currently 10.13.2 installed..
can expect Metal 2 graphics driver bugs running 10.13.2?
would be nice to know what Metal2 bugs have been fixed in 10.13.3 anyway..
Hi,
testing the forge 1.13 samples and run fine compiled with Xcode 10 beta 4 on IOS 12.0 beta 4..
but using exact Xcode on Mac 10.13.6 I get lots of this error:
xcrun: error: unable to find utility "metal", not a developer tool or in PATH
any help is appreciated..
full log for visibility buffer:
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/shadow_pass.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader shadow_pass.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/shadow_pass_alpha.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader shadow_pass_alpha.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/visibilityBuffer_pass.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader visibilityBuffer_pass.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/visibilityBuffer_pass_alpha.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader visibilityBuffer_pass_alpha.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/visibilityBuffer_shade.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader visibilityBuffer_shade.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/visibilityBuffer_shade.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader visibilityBuffer_shade.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/deferred_pass.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader deferred_pass.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/deferred_pass.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader deferred_pass.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/deferred_shade.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader deferred_shade.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/deferred_shade.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader deferred_shade.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/deferred_shade_pointlight.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader deferred_shade_pointlight.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/clear_buffers.comp.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader clear_buffers.compxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/triangle_filtering.comp.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader triangle_filtering.compxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/clear_light_clusters.comp.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader clear_light_clusters.compxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/cluster_lights.comp.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader cluster_lights.compxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/HDAO.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader HDAO.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/HDAO.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader HDAO.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/HDAO.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader HDAO.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/HDAO.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader HDAO.vertxcrun: error: unable to find utility "metal", not a developer tool or in PATH
Error: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1114) Failed to compile shader ../../../src/OSXMetal/resolve.vert.metalError: /Users/oscarbarenysgarcia/Downloads/The-Forge-1.13/Common_3/Renderer/ResourceLoader.cpp(1307) Error while generating bytecode for shader resolve.vertINFO: [Init] Load shaders : 458.811005 msINFO: [Init] Load assimp scene : 5166.097168 ms
INFO: [Init] Load scene buffers : 1093.048950 ms
INFO: [Init] Load clusters : 1613.715942 ms
INFO: [Init] Load textures : 578.322021 ms
applied your pull request and procedural sample works but tesselation sample fails with..
2018-01-27 14:56:31.843688+0100 07_Tessellation[820:9349] validateFunctionStepRate, line 301: error 'MTLVertexStepFunctionPerVertex not allowed with postTessellationVertexFunction.'
validateFunctionStepRate:301: failed assertion `MTLVertexStepFunctionPerVertex not allowed with postTessellationVertexFunction.'
(lldb)
Hello,
I'm actually integrating the-forge into an existing higher-level renderer which already sports exclusive DX12 support, and ran into an issue when it comes to accessing subresources of buffers/textures. Is there a particular convention yet to deal with this in the-forge? I haven't looked at the higher-level parts of the code to see if it's really needed or not or where, or if I can get around this.
It might be just the case where I specify an offset and size to updateResource and make sure the memory access is set correctly on the buffer creation. The code also deals with resource barriers/transitions which takes the subresource into account which I think the-forge hasn't got the ability to do yet, when I do a brief search in the backend code and compare.
I'll share this integration when it's ready, but in the meantime is there a better way for discussion than issue tickets?
Cheers
vulkan.hpp
) itself?You say:
"Release 1.01 macOS now runs the Hardware Tessellation unit test. There is also now a new unit test that shows a procedurally generated earth."
but 07_Tessellation folder is missing OSXMetal subfolder unlike other tests and "macOS Xcode" folder is missing also "07_Tessellation"..
same applies to 08_Procedural sample is lacking OSXMetal subfolder and xcodeproj ..
The-Forge/Common_3/Renderer/Vulkan/Vulkan.cpp
Line 2306 in d83ecf9
This should be assigned the Vk-translated value of the mipMapMode parameter.
Hi,
nice to see now all units tests came with IOS support.. but seems I compiled 01 unit test and doesn't run
on ipad Pro 10.5 (iOS GPU family 3) because says texture cube map arrays need ios gpu family 4..
this is only supported on latest iphones and iphone x..
don't know if engine could lower requiriments to "ios gpu family 3" with much more use base..
for example 07 tesselation unit test should run on family 3 devices..
thanks..
Hi,
I see 01_transformation_ios sample but the others aren't avaiable on iOS right now..
is that due to Metal limitations on iOS vs on desktop or just is a start and there are plans to port it?
thanks..
I've been considering switching my DX12-only project to using the The-Forge. I've already done a simple conversion which went pretty smoothly and seems to work well. Some feedback on the conversion in case it's useful to you:
I'm interested to know if there any way to support memory/resource aliasing in The-Forge? In my current DX12 implementation I know the lifetimes of transient resources over a frame and so I've made use of memory aliasing to reduce the total amount of memory allocated. It's not clear to me how to do anything like this with The-Forge - I might be missing something.
Many thanks!
Consult the resource pipeline documentation
Known problems:
-Skeletons and animations scaled from centimeters to meters (* 0.01). This is only required for FBX files. If we want to support other formats this has to be changed.
-See: AssetPipeline.cpp - line: 392 & 537 & 546
-Boris (Unreal Paragon asset) rotated 90 degrees on x axis after putting it through the animation pipeline. Blender also doesn’t import model correctly. Rotating the model in either Maya or Blender causes severe problems in the animation. Makes it look like his nose, fingers and ankle are all broken.
The bone file generated by fbx2ozz is correct。
AssetPipelineCmd.exe generated skeletal rotated 90 degrees on x axis ?
How should fbx be exported or how to set it correctly, I use
AssimpImporter importer;
AssimpImporter::Model model = {};
if (!importer.ImportModel(fullPath.c_str(), &model))
return false;
The fbx model is magnified n times, The FBX in the example is correct, how should the FBX model be derived
You might want to gitignore that file in the Common_3/OS/Windows folder. It's a compiled Windows resource file, it's not needed to be there I think.
Sent from my MI6 using FastHub
Hi,
seems just Nvidia added Vulkan HDR support (Windows only) to his latest dev driver via 2 exts
*VK_EXT_swapchain_colorspace
*VK_EXT_hdr_metadata
no pressure, just asking about what's the status & plans for HDR support in "The Forge"?
Right now seems support for HDR TV can be supported on D3D11&D3D12 via new DXGI APIs,
and on Vulkan using the new extensions supported by NV dev driver..
no expert on HDR but for DXGI I mean using new HDR and WCG APIs:
https://docs.microsoft.com/en-us/windows/desktop/direct3ddxgi/dxgi-1-6-improvements
https://docs.microsoft.com/en-us/windows/desktop/direct3ddxgi/high-dynamic-range-and-wide-color-gamut
In order to enable HDR and WCG in your app, refer to the following APIs.
IDXGISwapChain4::SetHDRMetaData : sets High Dynamic Range (HDR) and Wide Color Gamut (WCG) header metadata.
DXGI_HDR_METADATA_HDR10 : structure containing the metadata settings.
DXGI_HDR_METADATA_TYPE : enum identifying the type of header metadata.
DXGI_COLOR_SPACE_TYPE : defines the colorspace (sRGB, YCbCr), color range, gamma settings, and other details of the color format.
thanks..
Hi,
just tested these "new transparency sample" on Windows.. Raster Order Groups mode works OK on DX API..
doing a quick test on Vega of these sample on Macos seems the Raster Order View variant (Intel paper) is missing on Macos altough Metal2 supports "Raster Order Groups"..
As you probably know Raster Order Groups is an optional feature of Metal2 but it's implemented on Vega Metal2 driver, as it shows :
areRasterOrderGroupsSupported 1
so are you planning to implement Raster order group support on the transparency sample on Macos?
would be nice as there aren't many (if any) samples of using Raster Order Groups on Metal..
also note I opened some time ago an issue requesting exposing Raster order groups in Vulkan:
KhronosGroup/Vulkan-Ecosystem#27
so hope eventually it's exposed and transparency AOIT mode can be supported also on Vulkan..
thanks..
This is the code :
for (uint32_t i = -1; i < pRenderer->mInstanceLayers.size(); ++i)
It is initializing an unsigned integer to -1, which means it is initialized to UINT32_MAX.
It won't ever be lower than mInstanceLayers.size() and the loop will never be taken.
The-Forge/Common_3/Renderer/Vulkan/Vulkan.cpp
Line 1893 in d3b5c29
I was wondering if it would be possible to expose functionality along the lines of vkCmdCopyImage/ID3D12GraphicsCommandList::CopyTextureRegion?
The-Forge/Common_3/Renderer/Vulkan/Vulkan.cpp
Line 2919 in 38b445c
Should be rs.depthClampEnable = pRasterizerState->DepthClampEnable;
On Windows 10, I pressed alt-enter to toggle fullscreen.
vkAcquireNextImageKHR() returned VK_ERROR_OUT_OF_DATE_KHR.
This triggered assert in Vulkan.cpp:3740:
ASSERT(VK_SUCCESS == vk_res);
This isn't an issue per se, but I was wondering how much effort would be involved in using The-Forge as a module in an existing game-engine-like framework.
If someone wanted to leverage the cross-platform rendering side of The-Forge but leave all the other bits behind.
Hi.
For PC Linux Requirements, you mention support for AMDGPU-Pro.
Just wanted to know if you'll be supporting MESA + RADV eventually.
Thanks for your time.
Cheers.
Vulkan.cpp:1244 create_default_resources() function does not set mType, default value is TEXTURE_TYPE_1D. This conflicts with requested mHeight = 2, resulting ERROR: [internal_debug_report_callback] [Image] : CreateImage extents exceed allowable limits for format: Width = 2 Height = 2 Depth = 1: Limits for Width = 32768 Height = 1 Depth = 1 for format VK_FORMAT_R8_UNORM. (0).
Hey! I have a question about The Forge configuration.
You have an examples, but in examples, you connect libraries directly to solution. How can I add libraries as a submodule to my project?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.