armory3d / armory

3D Engine with Blender Integration
https://armory3d.org/engine
zlib License
3.07k stars 316 forks source link

Is the flash past due to a memory graphics card? #2832

Closed chuiliuyiyi closed 1 year ago

chuiliuyiyi commented 1 year ago

window10 blender3.3.0 armory2303 No graphics card armory player flash across,Is this the reason for not having a graphics card?

rpaladin commented 1 year ago

Hello. Do you get any errors in the console? Is the "flash" persistent in the Armory Player after loading?

chuiliuyiyi commented 1 year ago

No errors, one warning。 D:\ArmorySDK\armsdk/nodejs/node.exe D:\ArmorySDK\armsdk/Kha/make krom --ffmpeg D:\Program Files\python3.8.3\Scripts\ffmpeg.EXE -g direct3d11 --shaderversion 330 --parallelAssetConversion 4 --to build_untitled/debug --quiet Finished in 22.505s D:\ArmorySDK\armsdk/Krom/Krom.exe E:\aaa\build_untitled/debug/krom E:\aaa\build_untitled/debug/krom-resources --consolepid 5988 WARNING: Player exited code 2147483651

chuiliuyiyi commented 1 year ago

When I compiled with vsc++, I found an exception breakpoint. Is it related to this.

rpaladin commented 1 year ago

WARNING: Player exited code 2147483651

This crash code was discussed at the Armory Discord a while back:

image

Here are the few solutions provided by @ QuantumCoderQC

image

chuiliuyiyi commented 1 year ago

Can you give me a link? I don't understand English and need a translation

rpaladin commented 1 year ago

Sure, here it's:

NOTAldi — hello there, so i just add player model from mixamo and then i got this "WARNING: Player exited code 2147483651" i wonder what is that mean?

QuantumCoderQC — Okay, so there seem to be two issues:

  1. The mesh has n-gons. Which is not supported in Armory. You could see the error message for this in the debug console.
  2. The object has high res textures, which ideally should not cause issues, but there is this known bug. The dev mentioned he is > looking into it https://github.com/armory3d/armory/issues/2746
chuiliuyiyi commented 1 year ago

I replaced Krom.exe. Still a flashback。I won't do anything else。

rpaladin commented 1 year ago

Can you please share these files:

  1. \armsdk\Krom\kinc.dmp
  2. \armsdk\Krom\stderr.txt
  3. A blend that can reproduce your issue and/or crash.
chuiliuyiyi commented 1 year ago

It includes blender, krom windows, and windows hl build aaa.zip

rpaladin commented 1 year ago

Your blend works fine for me in Armory (with and without cache) with the official Krom (Armorcore) that ships with Armory. Your Windows (Krom) build works fine for me too. I personally can't test Windows (C) due to personal issues unfortunately, but others should be able to.

Can you please share the two crashlogs I mentioned in my last post above if you have them? Thanks!

chuiliuyiyi commented 1 year ago

Yeah kinc.zip No files stderr.txt

MoritzBrueckner commented 1 year ago

Hi, is the flashing directly related to the crash (that is, the window opens on your screen and immediately closes)? Or are these two different issues (some flickering in the rendering for example and Krom crashes)? What exactly do you mean with "flash"?

When I compiled with vsc++, I found an exception breakpoint. Is it related to this.

Is this the same issue as https://github.com/armory3d/armory/issues/2831?

chuiliuyiyi commented 1 year ago

flash mean After clicking play, the window will appear and quickly close。 Associated with it #2831。 In short, it cannot be compiled or played, it can only be run in a web browser

chuiliuyiyi commented 1 year ago

image I used vsc++2022 and still reported an error

MoritzBrueckner commented 1 year ago

Sorry for my late answer. Unfortunately I cannot read those characters, but I think the call stack can be found in one of the following tabs: Screenshot Could you please check those tabs and if you see a list of function calls similar to the example I shared in https://github.com/armory3d/armory/issues/2831#issuecomment-1492742754 share a screenshot of that?

chuiliuyiyi commented 1 year ago

Read prefs: C:\Users\Admin\AppData\Roaming\Blender Foundation\Blender\3.3\config\userpref.blend Running Armory SDK from D:\ArmorySDK2304\armsdk/ Read blend: E:\aaa\untitled.blend Using CPU for environment render (might be slow). Enable CUDA if possible. Saved: 'E:\aaa\build_untitled\compiled\Assets\envmaps\env_World.jpg' Time: 00:00.26 (Saving: 00:00.02)

D:\ArmorySDK2304\armsdk/nodejs/node.exe D:\ArmorySDK2304\armsdk/Kha/make krom --ffmpeg D:\Program Files\python3.8.3\Scripts\ffmpeg.EXE -g direct3d11 --shaderversion 330 --parallelAssetConversion 4 --to build_untitled/debug --quiet --nohaxe --noproject D:\ArmorySDK2304\armsdk/Kha/Tools/windows_x64/haxe.exe --connect 6000 project-krom.hxml Finished in 5.973s D:\ArmorySDK2304\armsdk/Krom/Krom.exe E:\aaa\build_untitled/debug/krom E:\aaa\build_untitled/debug/krom-resources --consolepid 6936 WARNING: Player exited code 2147483651

image

chuiliuyiyi commented 1 year ago

The code output after clicking play image

MoritzBrueckner commented 1 year ago

Could you please check those tabs and if you see a list of function calls similar to the example I shared in https://github.com/armory3d/armory/issues/2831#issuecomment-1492742754 share a screenshot of that?

Can you please try this (see my post above)? The output from Visual Studio might show the reason for the crash, unlike the Blender console output which in this case only gives background information.

MoritzBrueckner commented 1 year ago

My answer to https://github.com/armory3d/armory/issues/2831#issuecomment-1509995738 (let's continue here in this issue):

In https://github.com/armory3d/armory/issues/2832#issuecomment-1499765979 you can see in the screenshot where to click in Visual Studio (highlighted in red), one of the tabs should look very similar to my screenshot in https://github.com/armory3d/armory/issues/2831#issuecomment-1492742754. Please try to find this and then screenshot it, otherwise there is not much I can do since I cannot reproduce it myself.

chuiliuyiyi commented 1 year ago

image image image image image image “untitled_1_0_2.exe”(Win32): 已加载“E:\aaa\build_untitled\windows-hl-build\x64\Debug\untitled_1_0_2.exe”。已加载符号。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\ntdll.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\kernel32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\KernelBase.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\apphelp.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\ws2_32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\rpcrt4.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\dinput8.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\crypt32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\msvcrt.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\ucrtbase.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\winmm.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\advapi32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\user32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\winhttp.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\win32u.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\sechost.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\sechost.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\sechost.dll” “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\gdi32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\d3d11.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\gdi32full.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\msvcp_win.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\dxgi.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\shell32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\ole32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\combase.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\oleaut32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\dbghelp.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\imm32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\InputHost.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\SHCore.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\CoreMessaging.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\WinTypes.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\CoreUIComponents.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\propsys.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\bcryptprimitives.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\kernel.appcore.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\kernel.appcore.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\ntmarta.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\kernel.appcore.dll” Starting KincHL “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\dbgcore.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\ResourcePolicyClient.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\ResourcePolicyClient.dll” “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\DriverStore\FileRepository\u0368925.inf_amd64_05ef22929fd9ebfc\B368707\aticfx64.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\version.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\dwmapi.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\dwmapi.dll” “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\DriverStore\FileRepository\u0368925.inf_amd64_05ef22929fd9ebfc\B368707\atiuxp64.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\DriverStore\FileRepository\u0368925.inf_amd64_05ef22929fd9ebfc\B368707\atidxx64.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\setupapi.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\cfgmgr32.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\bcrypt.dll”。无法查找或打开 PDB 文件。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\amdihk64.dll”。模块已生成,不包含符号。 “untitled_1_0_2.exe”(Win32): 已加载“C:\Windows\System32\shlwapi.dll”。无法查找或打开 PDB 文件。 D3D11CreateDevice: Flags (0x2) were specified which require the D3D11 SDK Layers for Windows 10, but they are not present on the system. These flags must be removed, or the Windows 10 SDK must be installed. Flags include: D3D11_CREATE_DEVICE_DEBUG 0x00007FFD9E1C3E49 处(位于 untitled_1_0_2.exe 中)引发的异常: Microsoft C++ 异常: _com_error,位于内存位置 0x000000B8B66FA978 处。 “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\shlwapi.dll” “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\amdihk64.dll” “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\setupapi.dll” “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\cfgmgr32.dll” “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\DriverStore\FileRepository\u0368925.inf_amd64_05ef22929fd9ebfc\B368707\atidxx64.dll” “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\DriverStore\FileRepository\u0368925.inf_amd64_05ef22929fd9ebfc\B368707\atiuxp64.dll” “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\version.dll” “untitled_1_0_2.exe”(Win32): 已卸载“C:\Windows\System32\DriverStore\FileRepository\u0368925.inf_amd64_05ef22929fd9ebfc\B368707\aticfx64.dll”

chuiliuyiyi commented 1 year ago

Please.

MoritzBrueckner commented 1 year ago

Thank you very much, this is very helpful :)

It seems that the problem is in this line, which is the code responsible for initializing DirectX. This supports your initial assumption that the crash might happen due to not having a graphics card. I can't say this for sure, but I think there's not much you can do apart from upgrading your hardware, unfortunately. You might get around this by replacing D3D_DRIVER_TYPE_HARDWARE in line 212 with D3D_DRIVER_TYPE_REFERENCEor D3D_DRIVER_TYPE_SOFTWARE (you can find a rather technical explanation of those values here), but if it actually works (which I don't know) it will likely run very slow and potentially cause further issues somewhere else. If you target Krom and not HL you will need to rebuild Krom with this to test if it works.

For further information about what the code I linked above is doing or whether there are any potential workarounds, you could try to contact the developer of Kinc in a discussion on the Kinc repository, but I doubt there is much you can do :(

chuiliuyiyi commented 1 year ago

Many other game engines can run on my computer, can they support graphics card free mode? After all, there are many computers that use integrated graphics cards.

MoritzBrueckner commented 1 year ago

Ah, you have an integrated graphics card. It sounded as if you didn't have any graphics card at all (however that would work with a modern operating system). Anyways, this is very likely not an Armory issue since the crash happens within Kinc. Please try one of the Kinc samples that doesn't start with a number and if the same crash happens please report the issue on the Kinc repository.

chuiliuyiyi commented 1 year ago

My graphics card is shared memory, and a part of the memory card is used as a graphics card. I don't know whether it is an integrated graphics card. Can you improve the armory for my computer?

MoritzBrueckner commented 1 year ago

Please keep in mind what I wrote above: This is almost certainly not an Armory issue but a Kinc issue, so you will need to test whether you can reproduce the crash in a Kinc application (since the crash seems to depend your hardware) and then eventually open a bug report on the Kinc repository that I linked above. Please also share your exact hardware specifications if you create a bug report in that repository. If you cannot reproduce the crash with a Kinc example then we can continue investigating on the Armory side of things.

I'm sorry, but without more testing and/or information from your side it will be very difficult to fix your issue. For now I will close this issue, but we can reopen it if it actually turns out to be Armory-related only.

chuiliuyiyi commented 1 year ago

What I mean is, my computer doesn't have a graphics card and it's an AMD CPU. Can I have the Armory support computers without graphics cards. What I mean is, my computer doesn't have a graphics card and it's an AMD CPU. Can I have the Armory support computers without graphics cards.

好甜 @.***

 

------------------ 原始邮件 ------------------ 发件人: "armory3d/armory" @.>; 发送时间: 2023年5月5日(星期五) 晚上8:09 @.>; @.**@.>; 主题: Re: [armory3d/armory] Is the flash past due to a memory graphics card? (Issue #2832)

Please keep in mind what I wrote above: This is almost certainly not an Armory issue but a Kinc issue, so you will need to test whether you can reproduce the crash in a Kinc application (since the crash seems to depend your hardware) and then eventually open a bug report on the Kinc repository that I linked above. Please also share your exact hardware specifications if you create a bug report in that repository. If you cannot reproduce the crash with a Kinc example then we can continue investigating on the Armory side of things.

I'm sorry, but without more testing and/or information from your side it will be very difficult to fix your issue. For now I will close this issue, but we can reopen it if it actually turns out to be Armory-related only.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

MoritzBrueckner commented 1 year ago

Yes, if you try to reproduce your issue in Kinc and then report it to the Kinc repository. Otherwise Robert (the Kinc developer) doesn't know that this needs to be fixed.

chuiliuyiyi commented 1 year ago

How can we reproduce the problem of kinc? There are no related error reports on the Blender console, and only one breakpoint was marked in the compiled C++file, and there are no error reports.  

好甜 @.***

 

------------------ 原始邮件 ------------------ 发件人: "Moritz @.>; 发送时间: 2023年5月5日(星期五) 晚上9:02 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [armory3d/armory] Is the flash past due to a memory graphics card? (Issue #2832)

Yes, if you try to reproduce your issue in Kinc and then report it to the Kinc repository. Otherwise Robert (the Kinc developer) doesn't know that this needs to be fixed.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

MoritzBrueckner commented 1 year ago

How can we reproduce the problem of kinc?

You need to fork the Kinc samples repository I linked above, and then follow the instructions in the repository readme (note that the git URL in the readme is wrong, but the Build and Run Example step should be correct). This has nothing to do with Blender or Armory, Kinc is basically the backend implementation that Armory is built upon.

RobDangerous commented 1 year ago

You might be on the wrong track here. Zeta found this in the pics above:

These flags must be removed, or the Windows 10 SDK must be installed.
Flags include: D3D11_CREATE_DEVICE_DEBUG

D3D11_CREATE_DEVICE_DEBUG is only set in debug-mode so that won't happen in Armory.

MoritzBrueckner commented 1 year ago

D3D11_CREATE_DEVICE_DEBUG is only set in debug-mode so that won't happen in Armory.

In the images above you can see that they built the project in debug mode, so I guess it's a wrong local setup then like Zeta mentioned on Discord.

@chuiliuyiyi In the Visual Studio installer, please install the Windows 10 SDK i if not present and also a package called "Graphics Tools" or similar (this might be translated into your language in some way). This could potentially fix your issue.

RobDangerous commented 1 year ago

This will not fix the original issue because D3D11_CREATE_DEVICE_DEBUG is not set in Release mode. But the original issue might reveal itself afterwards. Or just run it in Release mode in Visual Studio.