X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;ds=sidebyside;f=misc%2Ftools%2Fxonotic-map-compiler;h=427ee97103200293a248bcd4f57ebb6a6271a207;hb=b28f4b26d4a58308f988b838bb10621e1cc48a0b;hp=4f8c83871edcfbb6ee6eab9ca84d9384afcc289c;hpb=d95dde1cc44139ca75f658225b790e124eac2571;p=xonotic%2Fxonotic.git diff --git a/misc/tools/xonotic-map-compiler b/misc/tools/xonotic-map-compiler index 4f8c8387..427ee971 100755 --- a/misc/tools/xonotic-map-compiler +++ b/misc/tools/xonotic-map-compiler @@ -25,7 +25,7 @@ use File::Temp; our $VISFLAGS = ''; # Default flags for the -light stage - our $LIGHTFLAGS = '-deluxe -patchshadows -samples 3 -lightmapsize 512'; + our $LIGHTFLAGS = '-deluxe -patchshadows -samples 3 -lightmapsize 512 -fast -fastbounce -dirty'; # Default flags for the -minimap stage our $MINIMAPFLAGS = ''; @@ -134,6 +134,16 @@ while(@ARGV) { $options->{order} = [split /\s*,\s*/, shift @ARGV]; } + elsif($_ =~ /^--no(-.*)/) + { + if($curmode eq 'maps') + { + $curmode = 'bsp'; + } + my $flag = $1; + @{$options->{$curmode}} = grep { (($_ eq $flag) ... /^-/) !~ /^[0-9]+$/ } @{$options->{$curmode}}; + # so, e.g. --no-samplesize removes "-samplesize" and a following "3" + } elsif($_ =~ /^-(-.*)/) { if($curmode eq 'maps') @@ -183,7 +193,7 @@ sub q3map2(@) or die "fork: $!"; if($pid) # parent { - local $SIG{ALRM} = sub { kill $pid; }; + local $SIG{ALRM} = sub { warn "SIGALRM caught\n"; kill TERM => $pid; }; alarm $timeout if $timeout; if(waitpid($pid, 0) != $pid) @@ -191,7 +201,7 @@ sub q3map2(@) die "waitpid: did not return our child process $pid: $!"; } alarm 0; - return $? == 0; + return ($? == 0); } else # child {