r5661 - trunk/misc/tools
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Sat Jan 24 16:00:28 EST 2009
Author: div0
Date: 2009-01-24 16:00:28 -0500 (Sat, 24 Jan 2009)
New Revision: 5661
Added:
trunk/misc/tools/shader-checksums.pl
Log:
shader checksum script
Added: trunk/misc/tools/shader-checksums.pl
===================================================================
--- trunk/misc/tools/shader-checksums.pl (rev 0)
+++ trunk/misc/tools/shader-checksums.pl 2009-01-24 21:00:28 UTC (rev 5661)
@@ -0,0 +1,46 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+use Digest::MD5;
+
+my $shadertext = "";
+my $level = 0;
+my $curshader;
+while(<STDIN>)
+{
+ s/\r//gs;
+ chomp;
+
+ s/\/\/.*//s;
+ s/^\s+//;
+ s/\s+$//;
+ next if /^$/;
+
+ my @line = map { s/"//g; $_; } split /\s+/, $_;
+
+ $shadertext .= "@line\n";
+
+ if($line[0] eq '{')
+ {
+ ++$level;
+ }
+ elsif($line[0] eq '}')
+ {
+ --$level;
+ if($level <= 0)
+ {
+ $level = 0;
+ if(defined $curshader)
+ {
+ printf "%s %s\n", Digest::MD5::md5_hex($shadertext), $curshader;
+ }
+ $curshader = undef;
+ }
+ }
+ elsif($level == 0)
+ {
+ $curshader = $line[0];
+ $shadertext = "";
+ }
+}
Property changes on: trunk/misc/tools/shader-checksums.pl
___________________________________________________________________
Name: svn:executable
+ *
More information about the nexuiz-commits
mailing list