Forum

FTEQW - Models disappear with view angle change

Discuss programming topics for the various GPL'd game engine sources.

Moderator: InsideQC Admins

FTEQW - Models disappear with view angle change

Postby toneddu2000 » Sun Feb 08, 2015 11:06 pm

Hi guys, I noticed that new version of FTEQW has a bug that makes models disappear when player turn around them keep looking at them(like if you strafe and keep the aim on an enemy). The model suddenly disappears, and, when you complete a 180°(approximately) circle around it, the model re-appears again! :shock: This bug doesn't not affect misc_model models in q3bsp maps but only model (no matter if .mdl, .md3 or iqm) spawned by code, like this:
Code: Select all
void example_map1()
{
   precache_model("models/test.iqm");
   setmodel(self,"models/test.iqm");
   setsize (self, VEC_HULL2_MIN, VEC_HULL2_MAX);
}

I noticed that revision #4831 works okay but, from #4832 and up, every release (even last one) contains this bug. So I downloaded EVERY release, compiled it and I discovered that the last one free from this bug is #4831. So I tried to restore every file changed from 4831 to 4832 but with no luck. I restored all these files
Code: Select all
changed   /trunk/engine/server/sv_send.c
changed   /trunk/engine/server/sv_sys_win.c
changed   /trunk/engine/client/cl_ui.c
changed   /trunk/plugins/plugin.c
changed   /trunk/engine/client/sys_linux.c
changed   /trunk/engine/client/cl_screen.c
changed   /trunk/engine/common/sys.h
changed   /trunk/engine/libs/mingw64-libs/libogg.a
changed   /trunk/engine/libs/mingw64-libs/jmorecfg.h
changed   /trunk/engine/client/sys_droid.c
changed   /trunk/plugins/plugin.h
changed   /trunk/engine/qclib/qcc_pr_comp.c
changed   /trunk/engine/common/vm.h
changed   /trunk/engine/libs/mingw64-libs/zlib.h
changed   /trunk/engine/client/cl_demo.c
changed   /trunk/engine/gl/gl_draw.c
changed   /trunk/engine/web/fs_web.c
changed   /trunk/engine/common/world.h
changed   /trunk/engine/client/m_multi.c
changed   /trunk/engine/libs/mingw64-libs/libjpeg.a
changed   /trunk/engine/client/view.c
changed   /trunk/engine/qclib/cmdlib.h
changed   /trunk/engine/dotnet2005/ftequake.vcproj
changed   /trunk/engine/gl/gl_shader.c
changed   /trunk/engine/common/fs_pak.c
added   /trunk/engine/common/com_phys_bullet.cpp
changed   /trunk/engine/server/svq3_game.c
changed   /trunk/engine/common/com_phys_ode.c
changed   /trunk/engine/common/gl_q2bsp.c
changed   /trunk/engine/server/sv_phys.c
changed   /trunk/engine/qclib/progsint.h
changed   /trunk/engine/server/sv_mvd.c
changed   /trunk/engine/qclib/qcc.h
changed   /trunk/engine/common/mathlib.c
changed   /trunk/engine/libs/mingw64-libs/libz.a
changed   /trunk/engine/qclib/qcc_cmdlib.c
changed   /trunk/engine/common/mathlib.h
changed   /trunk/engine/client/snd_al.c
changed   /trunk/engine/qclib/pr_exec.c
changed   /trunk/engine/gl/gl_vidcommon.c
changed   /trunk/engine/qclib/progslib.h
changed   /trunk/engine/common/fs_win32.c
changed   /trunk/engine/libs/mingw64-libs/jerror.h
changed   /trunk/engine/common/plugin.c
changed   /trunk/engine/libs/mingw64-libs/zutil.h
changed   /trunk/engine/web/sys_web.c
changed   /trunk/engine/gl/gl_model.h
changed   /trunk/engine/client/keys.c
changed   /trunk/engine/server/svq2_game.c
changed   /trunk/engine/gl/gl_rmain.c
changed   /trunk/engine/client/cl_input.c
changed   /trunk/engine/server/savegame.c
changed   /trunk/engine/qclib/pr_comp.h
changed   /trunk/engine/libs/mingw64-libs/zconf.h
changed   /trunk/engine/http/ftpserver.c
changed   /trunk/engine/client/client.h
changed   /trunk/engine/libs/mingw64-libs/libvorbis.a
changed   /trunk/engine/qclib/qccmain.c
changed   /trunk/engine/client/cl_parse.c
changed   /trunk/engine/client/cl_tent.c
changed   /trunk/engine/server/sv_ccmds.c
changed   /trunk/engine/client/pr_csqc.c
changed   /trunk/engine/client/clq2_ents.c
changed   /trunk/engine/client/sys_win.c
changed   /trunk/engine/qclib/qcc_pr_lex.c
changed   /trunk/engine/client/m_single.c
changed   /trunk/engine/gl/shader.h
changed   /trunk/engine/qclib/qccguistuff.c
changed   /trunk/engine/client/net_master.c
changed   /trunk/engine/libs/mingw64-libs/jversion.h
changed   /trunk/engine/common/common.c
changed   /trunk/engine/gl/glsupp.h
changed   /trunk/engine/dotnet2005/ftequake.sln
changed   /trunk/engine/common/cvar.c
changed   /trunk/engine/common/q3common.c
changed   /trunk/engine/client/renderer.c
changed   /trunk/engine/qclib/initlib.c
changed   /trunk/engine/server/progdefs.h
changed   /trunk/engine/common/common.h
changed   /trunk/engine/qclib/pr_multi.c
changed   /trunk/engine/client/cl_pred.c
changed   /trunk/engine/server/sv_ents.c
changed   /trunk/engine/common/cvar.h
changed   /trunk/engine/client/m_mp3.c
changed   /trunk/engine/common/qvm.c
changed   /trunk/engine/gl/r_bishaders.h
changed   /trunk/engine/libs/mingw64-libs/jpeglib.h
changed   /trunk/engine/client/sys_sdl.c
changed   /trunk/engine/client/image.c
changed   /trunk/engine/client/render.h
changed   /trunk/engine/server/sv_main.c
changed   /trunk/engine/client/r_2d.c
changed   /trunk/engine/libs/mingw64-libs/libvorbisfile.a
changed   /trunk/engine/client/cl_ents.c
changed   /trunk/engine/common/net_chan.c
changed   /trunk/engine/client/pr_skelobj.c
changed   /trunk/engine/client/textedit.c
changed   /trunk/fteqtv/protocol.h
changed   /trunk/engine/qclib/execloop.h
changed   /trunk/engine/client/cl_main.c
changed   /trunk/engine/client/cl_plugin.inc
changed   /trunk/engine/server/server.h
changed   /trunk/engine/server/sv_init.c
changed   /trunk/engine/common/fs_zip.c
changed   /trunk/engine/common/com_mesh.c
changed   /trunk/engine/client/pr_menu.c
changed   /trunk/engine/qclib/pr_edict.c
changed   /trunk/engine/shaders/glsl/default2d.glsl
changed   /trunk/engine/common/pr_common.h
changed   /trunk/engine/client/merged.h
changed   /trunk/engine/common/com_mesh.h
changed   /trunk/engine/common/bothdefs.h
changed   /trunk/engine/server/sv_user.c
changed   /trunk/engine/server/net_preparse.c
changed   /trunk/engine/server/pr_cmds.c
changed   /trunk/engine/server/world.c
changed   /trunk/engine/common/protocol.h
changed   /trunk/engine/server/sv_sys_unix.c
changed   /trunk/engine/common/fs.c
changed   /trunk/engine/client/pr_clcmd.c
changed   /trunk/engine/common/fs_stdio.c
changed   /trunk/engine/qclib/comprout.c
changed   /trunk/engine/gl/gl_screen.c
changed   /trunk/engine/common/pr_bgcmd.c
changed   /trunk/engine/common/fs.h
changed   /trunk/engine/qclib/qccgui.c
changed   /trunk/engine/server/progs.h

But nothing changed! :shock: I spent 8 hours on this procedure and I'm completely wasted! :lol:
I noticed that Spike in revision #4832 made a lot of changes (even a stub for Bullet Physics inclusion, woo!), one of them is fixing stereoscopic vision. Since this bug appears when player moves around object keep looking at it, I thought that it could be the cause of the mess but with no luck.
Anyone could help?

Thanks in advance!
Meadow Fun!! - my first commercial game, made with FTEQW game engine
toneddu2000
 
Posts: 1352
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: FTEQW - Models disappear with view angle change

Postby Spike » Mon Feb 09, 2015 3:59 am

it should hopefully be fixed now.
I had troubles reproducing it.
Spike
 
Posts: 2892
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Re: FTEQW - Models disappear with view angle change

Postby toneddu2000 » Mon Feb 09, 2015 12:46 pm

Thanks Spike for your speed-light fix, you're the best, really! :D But unfortunately bug it's still there :( Model still disappears and re-appears when turning around it. I took a look at your modified files but I didn't understand which file is the culprit one.

PS: What abou Bullet integration, did I see right?

EDIT: my map is q3bsp, I noticed that you modified gl_q2bsp.c. Could that be the problem?
Meadow Fun!! - my first commercial game, made with FTEQW game engine
toneddu2000
 
Posts: 1352
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy

Re: FTEQW - Models disappear with view angle change

Postby toneddu2000 » Tue Feb 10, 2015 4:12 pm

I feel like an idiot, I create all this mess and, instead, was an error of mine! In these months I'm studying q3map2 so I was experimenting with minimal build: no light (because I want to use only dinamic lights) and no vis (because...I don't know, let's try if it works! :D ) so my NetRadiant default_build_menu.xml was

Code: Select all
<build name="q3map 32bit with collisions only BSP">
<command>[q3map2_32bit] -custinfoparms -meta -v &quot;[MapFile]&quot;</command>
</build>


But, of course, avoiding to VIS the map something strange happened, infact if I build my map with this setup
Code: Select all
<build name="q3map 32bit with collisions , vis and no light">
<command>[q3map2_32bit] -custinfoparms -meta -v &quot;[MapFile]&quot;</command>
<command>[q3map2_32bit] -vis -saveprt &quot;[MapFile]&quot;</command>
</build>
Objects don't disappear anymore, even with release 4832. :x

I feel like sh*t to have wasted your time, Spike :oops: , sorry!
Next time I'll make more advanced tests before yelling "BUG, BUG!" :roll:
Meadow Fun!! - my first commercial game, made with FTEQW game engine
toneddu2000
 
Posts: 1352
Joined: Tue Feb 24, 2009 4:39 pm
Location: Italy


Return to Engine Programming

Who is online

Users browsing this forum: No registered users and 1 guest