From 965826155f759a979f1ee8fe1ec4c408f6444707 Mon Sep 17 00:00:00 2001 From: extrawurst Date: Wed, 9 Apr 2025 11:23:19 +0200 Subject: [PATCH] simple water --- assets/maps/map1.map | 90 ++++++++++++++++++++++++++++++--- assets/textures/water.material | 5 ++ assets/textures/water.png | Bin 0 -> 2491 bytes src/tb_entities.rs | 5 ++ trenchbroom/hedz/hedz.fgd | 4 ++ 5 files changed, 97 insertions(+), 7 deletions(-) create mode 100644 assets/textures/water.material create mode 100644 assets/textures/water.png diff --git a/assets/maps/map1.map b/assets/maps/map1.map index aa95919..01cd8cf 100644 --- a/assets/maps/map1.map +++ b/assets/maps/map1.map @@ -657,7 +657,7 @@ { ( 832 7168 -304 ) ( 832 7169 -304 ) ( 832 7168 -303 ) canals [ 4.812271809458903e-16 -0.9999999999999999 0 64 ] [ 0 0 -1 16 ] 270 1 1 ( 896 6592 -368 ) ( 895 6592 -368 ) ( 896 6592 -367 ) canals [ 1.0000000000000007 -5.456456664689579e-16 0 128 ] [ 0 0 -1 16 ] 180 1 1 -( 896 6720 -880 ) ( 896 6721 -880 ) ( 895 6720 -880 ) canals [ 4.812271809458903e-16 -0.9999999999999999 0 64 ] [ 1.0000000000000007 -5.456456664689579e-16 0 128 ] 180 1 1 +( 896 6720 -768 ) ( 896 6721 -768 ) ( 895 6720 -768 ) canals [ 4.812271809458903e-16 -0.9999999999999999 0 64 ] [ 1.0000000000000007 -5.456456664689579e-16 0 128 ] 180 1 1 ( 704 7168 -304 ) ( 703 7168 -304 ) ( 704 7169 -304 ) canals [ -4.812271809458903e-16 0.9999999999999999 0 -64 ] [ 1.0000000000000007 -5.456456664689579e-16 0 128 ] 270 1 1 ( 704 7168 -304 ) ( 704 7168 -303 ) ( 703 7168 -304 ) canals [ -1.0000000000000007 5.456456664689579e-16 0 -128 ] [ 0 0 -1 16 ] 0 1 1 ( 896 6720 -368 ) ( 896 6720 -367 ) ( 896 6721 -368 ) canals [ -4.812271809458903e-16 0.9999999999999999 0 -64 ] [ 0 0 -1 16 ] 0 1 1 @@ -682,12 +682,12 @@ } // brush 75 { -( -512 6592 -1648 ) ( -512 6593 -1648 ) ( -512 6592 -1647 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 -( 832 6592 -1648 ) ( 832 6592 -1647 ) ( 833 6592 -1648 ) canals [ 1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 -( 832 6592 -1648 ) ( 833 6592 -1648 ) ( 832 6593 -1648 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 -( 1472 7168 -1584 ) ( 1472 7169 -1584 ) ( 1473 7168 -1584 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 -( 1472 7168 -1584 ) ( 1473 7168 -1584 ) ( 1472 7168 -1583 ) canals [ -1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 -( 1472 7168 -1584 ) ( 1472 7168 -1583 ) ( 1472 7169 -1584 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( -2048 6592 -1664 ) ( -2048 6593 -1664 ) ( -2048 6592 -1663 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 +( 832 6592 -1664 ) ( 832 6592 -1663 ) ( 833 6592 -1664 ) canals [ 1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( 832 6592 -1664 ) ( 833 6592 -1664 ) ( 832 6593 -1664 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 1472 7168 -1600 ) ( 1472 7169 -1600 ) ( 1473 7168 -1600 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 1472 7168 -1600 ) ( 1473 7168 -1600 ) ( 1472 7168 -1599 ) canals [ -1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( 1472 7168 -1600 ) ( 1472 7168 -1599 ) ( 1472 7169 -1600 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 } // brush 76 { @@ -716,6 +716,69 @@ ( 2878 5376 784 ) ( 2879 5376 784 ) ( 2878 5376 785 ) blue-fence [ -1 1.8369701987210297e-16 0 62 ] [ 0 0 -1 16 ] 0 1 1 ( 2880 5248 848 ) ( 2880 5247 848 ) ( 2880 5248 849 ) blue-fence [ 1.8369701987210297e-16 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 } +// brush 79 +{ +( -2048 7232 -1600 ) ( -2048 7232 -1599 ) ( -2048 7231 -1600 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 +( 832 7168 -1024 ) ( 832 7168 -1023 ) ( 833 7168 -1024 ) canals [ 1 0 0 0 ] [ 0 -1.9967346175427393e-16 1 0 ] 270 1 1 +( 192 7232 -1600 ) ( 192 7231 -1600 ) ( 193 7232 -1600 ) canals [ 1 0 0 0 ] [ 0 -1 -1.9967346175427393e-16 16 ] 270 1 1 +( 832 7168 -768 ) ( 833 7168 -768 ) ( 832 7167 -768 ) canals [ -1 0 0 0 ] [ 0 -1 -1.9967346175427393e-16 16 ] 270 1 1 +( 192 7232 -1600 ) ( 193 7232 -1600 ) ( 192 7232 -1599 ) canals [ -1 0 0 0 ] [ 0 -1.9967346175427393e-16 1 0 ] 270 1 1 +( 832 7168 -1024 ) ( 832 7167 -1024 ) ( 832 7168 -1023 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 +} +// brush 80 +{ +( -1280 6592 -1600 ) ( -1280 6592 -1599 ) ( -1280 6591 -1600 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 +( 832 6528 -1024 ) ( 832 6528 -1023 ) ( 833 6528 -1024 ) canals [ 1 0 0 0 ] [ 0 -1.9967346175427393e-16 1 0 ] 270 1 1 +( 192 6592 -1600 ) ( 192 6591 -1600 ) ( 193 6592 -1600 ) canals [ 1 0 0 0 ] [ 0 -1 -1.9967346175427393e-16 16 ] 270 1 1 +( 832 6528 -768 ) ( 833 6528 -768 ) ( 832 6527 -768 ) canals [ -1 0 0 0 ] [ 0 -1 -1.9967346175427393e-16 16 ] 270 1 1 +( 192 6592 -1600 ) ( 193 6592 -1600 ) ( 192 6592 -1599 ) canals [ -1 0 0 0 ] [ 0 -1.9967346175427393e-16 1 0 ] 270 1 1 +( 832 6528 -1024 ) ( 832 6527 -1024 ) ( 832 6528 -1023 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 +} +// brush 81 +{ +( -2048 6592 -768 ) ( -2048 6593 -768 ) ( -2048 6592 -767 ) canals [ 0 -1 0 0 ] [ 0 0 -1 16 ] 90 1 1 +( 192 6592 -768 ) ( 192 6592 -767 ) ( 193 6592 -768 ) canals [ 1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( 192 6592 -768 ) ( 193 6592 -768 ) ( 192 6593 -768 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 832 7168 -704 ) ( 832 7169 -704 ) ( 833 7168 -704 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 270 1 1 +( 832 7168 -704 ) ( 833 7168 -704 ) ( 832 7168 -703 ) canals [ -1 0 0 0 ] [ 0 0 -1 16 ] 270 1 1 +( 832 7168 -704 ) ( 832 7168 -703 ) ( 832 7169 -704 ) canals [ 0 1 0 0 ] [ 0 0 -1 16 ] 270 1 1 +} +// brush 82 +{ +( -2048 6464 -1664 ) ( -2048 6465 -1664 ) ( -2048 6464 -1663 ) canals [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 5504 -1664 ) ( -2048 5504 -1663 ) ( -2047 5504 -1664 ) canals [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 6464 -1664 ) ( -2047 6464 -1664 ) ( -2048 6465 -1664 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1280 6592 -1600 ) ( -1280 6593 -1600 ) ( -1279 6592 -1600 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1280 6592 -1600 ) ( -1279 6592 -1600 ) ( -1280 6592 -1599 ) canals [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1280 6592 -1600 ) ( -1280 6592 -1599 ) ( -1280 6593 -1600 ) canals [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +// brush 83 +{ +( -1280 6464 -1600 ) ( -1280 6465 -1600 ) ( -1280 6464 -1599 ) canals [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1280 5504 -1600 ) ( -1280 5504 -1599 ) ( -1279 5504 -1600 ) canals [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1280 6464 -1600 ) ( -1279 6464 -1600 ) ( -1280 6465 -1600 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1216 6528 -768 ) ( -1216 6529 -768 ) ( -1215 6528 -768 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1216 6528 -1536 ) ( -1215 6528 -1536 ) ( -1216 6528 -1535 ) canals [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1216 6528 -1536 ) ( -1216 6528 -1535 ) ( -1216 6529 -1536 ) canals [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +// brush 84 +{ +( -2112 7104 -1600 ) ( -2112 7105 -1600 ) ( -2112 7104 -1599 ) canals [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2112 6144 -1600 ) ( -2112 6144 -1599 ) ( -2111 6144 -1600 ) canals [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2112 7104 -1600 ) ( -2111 7104 -1600 ) ( -2112 7105 -1600 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -2048 7168 -768 ) ( -2048 7169 -768 ) ( -2047 7168 -768 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -2048 7168 -1536 ) ( -2047 7168 -1536 ) ( -2048 7168 -1535 ) canals [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 7168 -1536 ) ( -2048 7168 -1535 ) ( -2048 7169 -1536 ) canals [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +// brush 85 +{ +( -2048 6464 -768 ) ( -2048 6465 -768 ) ( -2048 6464 -767 ) canals [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 5504 -768 ) ( -2048 5504 -767 ) ( -2047 5504 -768 ) canals [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -2048 6464 -768 ) ( -2047 6464 -768 ) ( -2048 6465 -768 ) canals [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1280 6592 -704 ) ( -1280 6593 -704 ) ( -1279 6592 -704 ) canals [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( -1280 6592 -704 ) ( -1279 6592 -704 ) ( -1280 6592 -703 ) canals [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( -1280 6592 -704 ) ( -1280 6592 -703 ) ( -1280 6593 -704 ) canals [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} } // entity 1 { @@ -1107,3 +1170,16 @@ ( 1184 6912 -1376 ) ( 1184 6912 -1375 ) ( 1184 6913 -1376 ) origin [ 0 1 0 0 ] [ 0 0 -1 0 ] 270 1 1 } } +// entity 35 +{ +"classname" "water" +// brush 0 +{ +( -2112 6976 -1600 ) ( -2112 6977 -1600 ) ( -2112 6976 -1599 ) water [ 0 -1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 320 6528 -1600 ) ( 320 6528 -1599 ) ( 321 6528 -1600 ) water [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 320 6976 -1600 ) ( 321 6976 -1600 ) ( 320 6977 -1600 ) water [ -1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( 832 7360 -1536 ) ( 832 7361 -1536 ) ( 833 7360 -1536 ) water [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1 +( 832 7232 -1536 ) ( 833 7232 -1536 ) ( 832 7232 -1535 ) water [ -1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1 +( 832 7360 -1536 ) ( 832 7360 -1535 ) ( 832 7361 -1536 ) water [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1 +} +} diff --git a/assets/textures/water.material b/assets/textures/water.material new file mode 100644 index 0000000..989da95 --- /dev/null +++ b/assets/textures/water.material @@ -0,0 +1,5 @@ + +type = "StandardMaterial" + +[material] +base_color_texture = "water.png" diff --git a/assets/textures/water.png b/assets/textures/water.png new file mode 100644 index 0000000000000000000000000000000000000000..a895066a1a36a3344b905a633586ecfa203432f4 GIT binary patch literal 2491 zcmeHJk53b47(RkXDIr7M4>pr|9t`&*y}KUL*|QZ(f7nh64U|#Pm>uo4z0vl%yDPoo zvdm^gXH+6Ml1*KNa@NrTTuXbHfEM}rOfLd6E-g}3XvM8TJ?&-84IEw3P-=HJ z)H&5Iq-cX&Ba%SCPYV<*`h5YO6tzf9mjut!G={)2icqIT99A2wXE_=!L<>untC zW_$qS%QqFn7NcIJRI5}90*%Xn!jT}BaYqc409XW06e{qw3S4bhDoFw-3E~-?AaOjV z9Aks~;GzWTzxdLrhBY9GZ+`OrR<>Uadq(*h@=>FS^5-ib4z#!3!=m2Oy9OyKi-}k6MH`~F0y3DHw1UBKhVb>7`@E)+k}AwQ*1aqv?TxWdB1f-1`bZX` z6`dXJO(oXGc5<9;KQ$FPefZd?6TNNBQ&fko0@ED-$+S(}x~{wVTmSg-K*fbqPh46- z^{!5nPmDHn_m`>Of9?+R(XzdJqHUE9OJ%S-I@0-W#^B%$=FRA>Elo4cR}A&;8sE<2 z^(Dw_viI=5oVF!DI?ca9-~DklJK2alLr2Cx@(AFk=oHH^SH} zsaal6&t&A>O7P0a2%4*T2+CX`eN&*f4&^{l>MDytXBQ7meXUD@vZ1pZ4bSVnwc=H@ xZ`(oVM8T^^rq@F^2OxOp{^z~}|33$=rgZpH@0@se?QZEmm&I6WI8ppU^lxDzIKTh^ literal 0 HcmV?d00001 diff --git a/src/tb_entities.rs b/src/tb_entities.rs index 5000850..673551a 100644 --- a/src/tb_entities.rs +++ b/src/tb_entities.rs @@ -48,6 +48,11 @@ impl SpawnPoint { #[geometry(GeometryProvider::new().convex_collider())] pub struct Worldspawn; +#[derive(SolidClass, Component, Reflect, Default)] +#[reflect(Component)] +#[geometry(GeometryProvider::new())] +pub struct Water; + #[derive(SolidClass, Component, Reflect, Default)] #[reflect(Component)] #[require(Transform)] diff --git a/trenchbroom/hedz/hedz.fgd b/trenchbroom/hedz/hedz.fgd index ed720a4..731248e 100644 --- a/trenchbroom/hedz/hedz.fgd +++ b/trenchbroom/hedz/hedz.fgd @@ -126,6 +126,10 @@ scale(vector) : "Scale" : "1 1 1" : "" ] +@SolidClass = water +[ +] + @SolidClass = worldspawn [ ]