Page 6 of 38

Re: LZDoom [beta 4 11/29 released]

Posted: Thu May 09, 2019 8:09 am
by drfrag
It works on most computers, may be performance with hyperthreading on only one real core is bad. I don't know for sure what cpu his "craptop" has.
TDRR wrote:Forgot to say, after using r_multithreaded 2 (i think that was the command?) The framerate issue in software mode got fixed.
What is the model number of your laptop's cpu? Why don't you compile the latest g3.3mgw and see if you get the warning? It's the only way to know for sure what's going on. Use VS or MinGW-w64 for more fun, see the wiki.

Re: LZDoom [beta 4 11/29 released]

Posted: Thu May 09, 2019 2:31 pm
by TDRR
drfrag wrote:What is the model number of your laptop's cpu? Why don't you compile the latest g3.3mgw and see if you get the warning? It's the only way to know for sure what's going on. Use VS or MinGW-w64 for more fun, see the wiki.
It's a Celeron N2805, quite okay-ish for a free laptop. I'm definitely going to compile it later or sooner, but i haven't got around to setting up Visual Studio, and MinGW just spits weird smiley face errors with everything i try to compile so i uninstalled it. (Stuff like "Unknown character blablabalbalbalbalbla" and then a smiley face and some symbols)

Hope there's something to be done for core-amount detection, as it may be a bit troublesome to tell users to "type r_multithreaded and the number of cores in the console".

Re: LZDoom [beta 4 11/29 released]

Posted: Thu May 09, 2019 3:37 pm
by drfrag
And my solution was obviously wrong, now i've just declared num_threads as static. Should be okay unless i'm missing something. :? I'm still defaulting to two logical cores/threads.
TDRR wrote:Hope there's something to be done for core-amount detection
Your problem is extremely rare so i've just added a warning but anyway two cores should be okay unless it's some extremely craptastic hardware.
Just look at the wiki: https://zdoom.org/wiki/Compile_ZDoom_on_Windows

Re: LZDoom [beta 4 11/29 released]

Posted: Sat May 11, 2019 7:05 am
by goldenmob72
I know this is Unofficial but Will this be added to the ZDoom Download Page later ?
Just curious

Re: LZDoom [beta 4 11/29 released]

Posted: Sat May 11, 2019 12:23 pm
by TDRR
goldenwar72 wrote:I know this is Unofficial but Will this be added to the ZDoom Download Page later ?
Just curious
This would be neat, honestly, because it would help all the people who try downloading GZDoom but their PC won't run it. Not many of those come to these forums.

Thanks drfrag, going to try compiling it.

Re: LZDoom [beta 4 11/29 released]

Posted: Sun May 12, 2019 4:12 am
by drfrag
I don't think it will be added to the download page for now.
I will release a new version soon but i could post a rogue devbuild @DRD Team with the vintage builds. BTW i've hooked the CI services to my repo so you could download an Appveyor build (artifact) and add the dlls.
@Rachael: now you can add the status to the Code Submissions forum header, both legacy and g3.3mgw are compiled tough (they are very similar anyway).
These are the projects:
https://ci.appveyor.com/project/drfrag666/gzdoom
https://travis-ci.org/drfrag666/gzdoom

Re: LZDoom [beta 4 11/29 released]

Posted: Mon May 13, 2019 6:31 am
by drfrag
Finally i uploaded both rogue devbuilds (RelWithDebInfo) to the gzdoom-vintage folder. :)

Re: LZDoom [beta 4 11/29 released]

Posted: Mon May 13, 2019 5:57 pm
by goldenmob72
Where can I get more updates on this?

Also If I may suggest, I suggest changing the icon color to yellow instead of red that way it won't have the same color as ZDoom

Re: LZDoom [beta 4 11/29 released]

Posted: Wed May 15, 2019 4:48 am
by drfrag
I don't know what you mean. Tormentor667 did the logo for ZDoom and since it's unused i borrowed it, in theory it should say LZ but it doesn't matter, take it as a generic logo for a ZDoom derived engine. Still it's closer to the old ZDoom than GZDoom.

Now to the meat... i've made the switch to Unicode but without the newer fonts. Doom Tournament now works (with the -zsvoverride switch) and even with spanish but there's a crash in software when i open the Player setup menu. OpenGL runs fine (but GLSWFB also crashes).
If i remove the ZMAPINFO line Border = 0,0,"","","","","","","","" in GameInfo it doesn't crash. The crash was here already in the last devbuild changing ByteAt for CharCodeAt.
According to the wiki border = <size>, <offset>, "<tr>", "<t>", "<tl>", "<r>", "<l>", "<br>", "<b>", "<bl>" sets the border graphics used in various places throughout the game.
I guess those are textures? Also crashes reducing screen size, what does "" mean? A dummy texture? Is that line okay?
The crash happens here: *buff++ = *pix2; in texture.cpp. pix is null in pix = GetPixels(fmt == TEX_Pal? DefaultRenderStyle() : LegacyRenderStyles[STYLE_Shaded]);
Last iteration enters here:

Code: Select all

const uint8_t *FDummyTexture::GetPixels(FRenderStyle style)
{
	return nullptr;
}
@Marisa Kirisame: was that line already in old versions? Could you provide (or someone) an older version?
@devs: i really need help with this. What could i do? Add a null pointer check? What's going on here? Thanks.
Backtrace:

Code: Select all

>	lzdoom.exe!FTexture::FillBuffer(unsigned char * buff, int pitch, int height, FTextureFormat fmt) Line 768	C++
 	lzdoom.exe!D3DTex::Update() Line 2339	C++
 	lzdoom.exe!D3DTex::Create(D3DFB * fb, bool wrapping) Line 2290	C++
 	lzdoom.exe!D3DTex::D3DTex(FTexture * tex, FTextureFormat fmt, D3DFB * fb, bool wrapping) Line 2223	C++
 	lzdoom.exe!D3DFB::CreateTexture(FTexture * gametex, FTextureFormat fmt, bool wrapping) Line 2573	C++
 	lzdoom.exe!FTexture::GetNative(FTextureFormat fmt, bool wrapping) Line 733	C++
 	lzdoom.exe!D3DFB::FlatFill(int left, int top, int right, int bottom, FTexture * src, bool local_origin) Line 3003	C++
 	lzdoom.exe!V_DrawFrame(int left, int top, int width, int height) Line 1384	C++
 	lzdoom.exe!AF__Screen_DrawFrame(VMValue * param, int numparam, VMReturn * ret, int numret, const unsigned char * reginfo) Line 1408	C++
 	lzdoom.exe!VMNativeFunction::NativeScriptCall(VMFunction * func, VMValue * params, int numparams, VMReturn * returns, int numret) Line 308	C++
 	[External Code]	
 	lzdoom.exe!VMScriptFunction::FirstScriptCall(VMFunction * func, VMValue * params, int numparams, VMReturn * ret, int numret) Line 301	C++
 	[External Code]	
 	lzdoom.exe!VMScriptFunction::FirstScriptCall(VMFunction * func, VMValue * params, int numparams, VMReturn * ret, int numret) Line 301	C++
 	lzdoom.exe!VMCall(VMFunction * func, VMValue * params, int numparams, VMReturn * results, int numresults) Line 580	C++
 	lzdoom.exe!DMenu::CallDrawer() Line 325	C++
 	lzdoom.exe!M_Drawer() Line 839	C++
 	lzdoom.exe!D_Display() Line 959	C++
 	lzdoom.exe!D_DoomLoop() Line 1086	C++
 	lzdoom.exe!D_DoomMain() Line 2772	C++
 	lzdoom.exe!DoMain(HINSTANCE__ * hInstance) Line 1059	C++
 	lzdoom.exe!wWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * nothing, wchar_t * cmdline, int nCmdShow) Line 1390	C++

Code: Select all

-		this	0x0000023a13d4fc20 {...}	FTexture * {FDummyTexture}
+		[FDummyTexture]	{...}	FDummyTexture
+		__vfptr	0x00007ff75d2b40a0 {lzdoom.exe!void(* FDummyTexture::`vftable'[17])()} {0x00007ff75baf1c2a {lzdoom.exe!FDummyTexture::`vector deleting destructor'(unsigned int)}, ...}	void * *
		LeftOffset	0	short
		TopOffset	0	short
		WidthBits	6 '\x6'	unsigned char
		HeightBits	6 '\x6'	unsigned char
+		Scale	{X=1.0000000000000000 Y=1.0000000000000000 }	TVector2<double>
		SourceLump	-1	int
+		id	{texnum=0 }	FTextureID
+		CustomShaderTextures	0x0000023a13d4fc48 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>, ...}	FTexture *[15]
+		Name	{Chars=0x00007ff75d4d1cdc "" }	FString
		UseType	Null (13 '\r')	ETextureType
		bNoDecals	0 '\0'	unsigned char
		bNoRemap0	0 '\0'	unsigned char
		bWorldPanning	0 '\0'	unsigned char
		bMasked	1 '\x1'	unsigned char
		bAlphaTexture	0 '\0'	unsigned char
		bHasCanvas	0 '\0'	unsigned char
		bWarped	0 '\0'	unsigned char
		bComplex	0 '\0'	unsigned char
		bMultiPatch	0 '\0'	unsigned char
		bKeepAround	0 '\0'	unsigned char
		Rotations	65535	unsigned short
		SkyOffset	0	short
		Width	64	unsigned short
		Height	64	unsigned short
		WidthMask	63	unsigned short
+		Native	0x0000023a13d4fcd8 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>}	FNativeTexture *[3]
+		PixelsBgra	{ size=0 }	std::vector<unsigned int,std::allocator<unsigned int> >
		bSWSkyColorDone	false	bool
+		FloorSkyColor	{b=205 'Í' g=205 'Í' r=205 'Í' ...}	PalEntry
+		CeilingSkyColor	{b=205 'Í' g=205 'Í' r=205 'Í' ...}	PalEntry
+		gl_info	{Material=0x0000023a13d4fd20 {0x0000000000000000 <NULL>, 0x0000000000000000 <NULL>} SystemTexture=0x0000023a13d4fd30 {...} ...}	FTexture::MiscGLInfo
+		buff	0x0000023a15aa3560 ""	unsigned char *
		fmt	TEX_Pal (0)	FTextureFormat
		h	64	int
		height	64	int
		pitch	64	int
+		pix	0x0000000000000000 <NULL>	const unsigned char *
+		pix2	0x0000000000000000 <NULL>	const unsigned char *
		stride	0	int
		w	64	int
		x	0	int
		y	0	int

Re: LZDoom [beta 4 11/29 released]

Posted: Wed May 15, 2019 5:13 am
by Marisa the Magician
That ZMAPINFO line has been in there for a long time. It's so there are no borders displayed and it's just the tiled texture. This is to keep it identical to how it works in the original game (which was kind of a hidden feature).

I guess I'd have to change it to be a blank, existing texture?

Re: LZDoom [beta 4 11/29 released]

Posted: Wed May 15, 2019 6:21 am
by drfrag
It works in GZDoom, but don't think it did in ZDoom. I could try to avoid the crash.
May be i'm missing something but about this code in gi.cpp the graphics array is not used anywhere else, how does this work?

Code: Select all

			{
				// border = {size, offset, tr, t, tl, r, l ,br, b, bl};
				FString *graphics[8] = { &gameinfo.Border.tr, &gameinfo.Border.t, &gameinfo.Border.tl, &gameinfo.Border.r, &gameinfo.Border.l, &gameinfo.Border.br, &gameinfo.Border.b, &gameinfo.Border.bl };
				sc.MustGetToken(TK_IntConst);
				gameinfo.Border.offset = sc.Number;
				sc.MustGetToken(',');
				sc.MustGetToken(TK_IntConst);
				gameinfo.Border.size = sc.Number;
				for(int i = 0;i < 8;i++)
				{
					sc.MustGetToken(',');
					sc.MustGetToken(TK_StringConst);
					(*graphics[i]) = sc.String;
				}
			}
Edit: just confirmed with a zmapinfo.txt that ZDoom also crashed.

Re: LZDoom [beta 4 11/29 released]

Posted: Wed May 15, 2019 11:52 am
by drfrag
It's fixed. https://github.com/drfrag666/gzdoom/com ... 64ea8f5f3c
Marisa Kirisame wrote: I guess I'd have to change it to be a blank, existing texture?
No, it could stop working when you add more unsupported features anyway.

Re: LZDoom [beta 4 11/29 released]

Posted: Wed May 15, 2019 3:13 pm
by LossForWords
hey, how do i disable sprites consantly facing me like this?

Re: LZDoom [beta 4 11/29 released]

Posted: Thu May 16, 2019 7:47 pm
by TDRR
LossForWords wrote:hey, how do i disable sprites consantly facing me like this?
Use the poly renderer or OpenGL, as Classic Software has no way to fix it.

Re: LZDoom [beta 4 11/29 released]

Posted: Fri May 17, 2019 5:50 am
by drfrag
I don't know what to say, i think he is already using the GL renderer. It's the same as in GZDoom, there's the sprite billboard option but when you set it to Y axis they look like paper cutouts.
https://zdoom.org/wiki/OpenGL_options