Well
#1526 posted by rebb on 2014/08/05 23:33:39
It's probably safe to bump that limit to at least Half-Life compiler level where it's 128 instead of 64, and stack limits can be increased when compiling the compiler. The whole thing is meant to be a performance-optimization that matters mainly for Vis calculation times.
#1527 posted by necros on 2014/08/06 03:40:34
thanks for helping me understand this mfx/rebb.
So yeah, the latest test version lets the map compile but what exactly is this winding stuff?
From what I remember when I briefly dabbled in 3D and openGL stuff, winding is some kind of method of storing your vertices and faces in memory...
I guess I'm asking how can I avoid doing this?
Too many faces share the same plane?
I think someone once said that there is a limited number of planes than can be used in one map, but that if you have faces with the same plane, it'll reuse that plane or something..?
Also rebb: texture offset for rotating objects!!!!!!! <3
Lunaran
#1528 posted by than on 2014/08/06 04:18:37
Thanks for the feedback. I haven't really tested in multiple browsers yet, but I'll check that out next time I work on it.
Not sure how I can fix the texture problem though, I noticed that myself but since the uvs are just generated from the bsp data I have no idea what is causing the problem. There are also some limitations with webgl, so any non-power of two textures could potentially cause problems depending on the system.
The bsp preview isn't really meant as an accurate bsp viewing tool though. Would be nice to add lightmaps and have a few display options though.
@than
#1529 posted by Spike on 2014/08/06 05:35:09
extensions appear to be case-sensitive, meaning it'll refuse to load files copied off a fat32 drive (FOO.BSP).
no error message from trying to load q3/rbsp/bsp2 maps.
clicking files within a .pak doesn't seem to do anything (firefox).
it doesn't recognise .qc!
mdl rendering consumes an entire cpu core even when not given user input.
Spike
#1530 posted by than on 2014/08/07 01:56:39
thanks. I'll look into all those things.
Not sure what I should do with .qc files... What would you like it to do?
Firefox doesn't seem to handle the file url the same as chrome, since I'm not generating a data url until the user clicks a link, which basically equals me auto downloading a generated file for the user - perhaps it's a security risk? Anyway, chrome allows you to extract files currently, but I want to make it able to modify paks at some point.
Anyway, it's currently very hacky (esp. rendering), so I will fix some of this during the next code cleanup.
Also Rebb: Texture Offset For Rotating Objects!!!!!!!
#1531 posted by Nurax on 2014/08/08 03:17:21
Thanks a lot for this rebbor!!
Necros
#1532 posted by Preach on 2014/08/09 02:26:34
I have a vague recollections that windings are to do with the number of sides a polygon has. Do you possibly have a face anywhere with more than 64 edges? Perhaps not intentionally, but if you had lots of adjacent planes that nearly meet at the vertices but actually cut tiny slices, that might create one....
#1533 posted by necros on 2014/08/09 05:04:16
I'm not exactly sure what you mean. How could a face have 64 edges? They are all triangles. Or do you mean one plane that has been divided more than 64 times?
The Bsp Is Actually Made Of Polygons
#1534 posted by ericw on 2014/08/09 05:39:33
In fact in glquake they're still polygons when passed to OpenGL. Just for fun I checked start.bsp and it has a 20-sided poly somewhere!
So "r_showtris 1" is a bit deceptive; it shows you the polygons as they come out of the bsp, plus a bunch of lines drawn in to divide them into triangles, but you can't see which lines are which.
#1535 posted by metlslime on 2014/08/09 10:42:12
r_drawflat shows polygons.
#1536 posted by rebb on 2014/08/09 13:10:52
Windings are used in a lot of places in the code, also for portal generation. I think mfx managed to find a version of your map in your house while you were sleeping online and it had a very large ring-like structure in it with a lot of side elements.
If a portal is generated inside this, it can easily go over the 64 point limit and cause this error to be thrown.
Necros
Breaking limits since 2003!
Another Workaround
#1538 posted by Preach on 2014/08/09 15:07:27
Once you've found places where that happens, shouldn't it be possible to use a hint brush to break that ring in half/quarters/etc so that can't happen?
Heho
#1539 posted by mfx on 2014/08/09 17:40:13
Necros, the file flew by on the TB issuetracker, had to grab it to reproduce the error.
I also had no luck with epsilon values being changed slightly, but the hint/skip support of the above mentioned compilers should be able to eliminate the error.
Without having to raise the max_windings of course.. I keep you updated.
Sorry for any inconvience caused:)
#1540 posted by necros on 2014/08/09 17:41:59
Cool, ok, so it is fixable then... Yet flying around in the map didn't show me anything obviously having tons of edges. Some faces had maybe 6 or 7 sides, but most were split up to 4 or less sides.
and it had a very large ring-like structure in it with a lot of side elements.
Not sure which map you're talking about, but this is a new one with a very similar concept. It is a large ring of windows. So since I don't see any faces with a lot of edges, it sounds like it must be this case where a portal is being generated inside this ring.
Demo Smoothing
#1541 posted by Mandel on 2014/08/09 20:09:19
I've built a demo smoothing utility for DaZ, and even though I suppose it's of limited use, I'll post it here anyway in case anybody is curious and in order not to give any particular youtubers any unfair advantages!
http://mandelmassa.net/quake/demsmooth-1.02.zip
The binary is a 32 bit Windows build made with mingw32-gcc in cygwin. Source is here:
https://github.com/mandelmassa/demsmooth
#1542 posted by necros on 2014/08/09 22:00:29
this is the method used to get the smooth camera movement?
#1543 posted by Mandel on 2014/08/09 22:13:15
I think DaZ has used it in some of his latest Quake videos, for the intro bit. That's what it's intended for! Using it on regular play demos might render unexpected results since it's tuned for slow movement.
I just converted one of my normal play demos with it and it looks like I'm drunk or stoned playing.
Actually
#1545 posted by Mandel on 2014/08/09 22:41:58
It was made in response to the now classic january 1st W00tles post!
Mandel
#1546 posted by necros on 2014/08/09 23:04:54
That's a very cool utility! I thought he was placing waypoints or somesuch, but this method of doing a flyby camera is way more intuitive and simple!
Demo Smoothing 1.03
#1547 posted by Mandel on 2014/08/14 18:44:58
Fixed a bug with parsing Fitzquake spawn baseline messages - the program couldn't parse my own jam2_mfx demo so I just had to debug it.
http://mandelmassa.net/quake/demsmooth-1.03.zip
#1548 posted by Spirit on 2014/08/14 19:18:16
Mandel, please write Quaddicted a demo meta data extraction tool for 15, 10002 and 666. Something that extracts statistics like kill/secret count, length, completion, skill, maybe even shots fired or distance tracked if that is possible. Thank you! bye!
#1549 posted by Mandel on 2014/08/14 19:35:10
I just might!
#1550 posted by Lunaran on 2014/08/20 05:52:43
In triggers.qc:
void() teleport_use =
{
self.nextthink = time + 0.2;
force_retouch = 2; // make sure even still objects get hit
self.think = SUB_Null;
};
the purpose of force_retouch is clear, but I've always wondered why a teleporter had to have its nextthink set just to do nothing. Is that more obtuse secret qc behavior related to how force_retouch works? Or just cruft?
|