Generate real glossy reel-symbol art and close the visual gap further

Hand-authored 6 gradient-shaded SVG icons (gold coin, purple gem,
green potion, blue RZ shield, coin stack, gift box) to replace the
flat monochrome placeholder icons in the reels and reward list - no
image-generation tool is available here, so this is genuine vector
art with radial/linear gradients and highlight layers rather than a
literal asset match to the mockup's renders.

Combined with real Godot techniques: a layered-label glow effect on
the "RZ" marquee, chase-lit marquee bulbs down both sides of the
reel screen (looping Tweens), a much more pronounced arch silhouette
and neon border on the cabinet, and an overall scale-up (bigger
reels, marquee, lever) so the machine reads as the dominant element
instead of a cramped placeholder. Verified with an actual rendered
screenshot (not just structural checks) at each iteration.
This commit is contained in:
hz
2026-07-30 01:54:45 -05:00
parent bcb411bed8
commit 1bc7fbfb3c
13 changed files with 468 additions and 54 deletions
+18
View File
@@ -0,0 +1,18 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64">
<defs>
<radialGradient id="coinBody" cx="35%" cy="30%" r="75%">
<stop offset="0%" stop-color="#fff6d8"/>
<stop offset="35%" stop-color="#ffd447"/>
<stop offset="75%" stop-color="#f5a623"/>
<stop offset="100%" stop-color="#c9780a"/>
</radialGradient>
<linearGradient id="coinRim" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#8a5a08"/>
<stop offset="100%" stop-color="#c9780a"/>
</linearGradient>
</defs>
<circle cx="32" cy="35" r="27" fill="url(#coinRim)"/>
<circle cx="32" cy="31" r="27" fill="url(#coinBody)"/>
<path d="M32 16 L36.5 26.5 48 27.5 39 35 41.8 46.5 32 40 22.2 46.5 25 35 16 27.5 27.5 26.5Z" fill="#fff8e6" opacity="0.95"/>
<ellipse cx="22" cy="19" rx="9" ry="5" fill="#ffffff" opacity="0.35"/>
</svg>

After

Width:  |  Height:  |  Size: 878 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://baothvvse1io2"
path="res://.godot/imported/slot_coin.svg-d58109e8f39477605be91302ac3d3e1b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/icons/slots/slot_coin.svg"
dest_files=["res://.godot/imported/slot_coin.svg-d58109e8f39477605be91302ac3d3e1b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+17
View File
@@ -0,0 +1,17 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64">
<defs>
<linearGradient id="stackTop" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#bfe0ff"/>
<stop offset="100%" stop-color="#2f80ff"/>
</linearGradient>
<linearGradient id="stackSide" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#1c56c9"/>
<stop offset="100%" stop-color="#123a8a"/>
</linearGradient>
</defs>
<path d="M14 46c0 4 8 7 18 7s18-3 18-7v-6c0 4-8 7-18 7s-18-3-18-7Z" fill="url(#stackSide)"/>
<ellipse cx="32" cy="40" rx="18" ry="7" fill="url(#stackTop)"/>
<path d="M14 34c0 4 8 7 18 7s18-3 18-7v-6c0 4-8 7-18 7s-18-3-18-7Z" fill="url(#stackSide)"/>
<ellipse cx="32" cy="28" rx="18" ry="7" fill="url(#stackTop)"/>
<ellipse cx="27" cy="25" rx="5" ry="2" fill="#ffffff" opacity="0.5"/>
</svg>

After

Width:  |  Height:  |  Size: 867 B

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://copvrhhf0dqrw"
path="res://.godot/imported/slot_coin_stack.svg-a487fa07707da958c28fb0906d3edd11.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/icons/slots/slot_coin_stack.svg"
dest_files=["res://.godot/imported/slot_coin_stack.svg-a487fa07707da958c28fb0906d3edd11.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+21
View File
@@ -0,0 +1,21 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64">
<defs>
<linearGradient id="gemTop" x1="0" y1="0" x2="1" y2="1">
<stop offset="0%" stop-color="#e6d6ff"/>
<stop offset="100%" stop-color="#9b6bff"/>
</linearGradient>
<linearGradient id="gemLeft" x1="0" y1="0" x2="1" y2="0">
<stop offset="0%" stop-color="#c9a6ff"/>
<stop offset="100%" stop-color="#7c3fe0"/>
</linearGradient>
<linearGradient id="gemRight" x1="0" y1="0" x2="1" y2="0">
<stop offset="0%" stop-color="#7c3fe0"/>
<stop offset="100%" stop-color="#5222a8"/>
</linearGradient>
</defs>
<path d="M14 22 L32 8 L50 22 L44 22 L32 14 L20 22Z" fill="url(#gemTop)"/>
<path d="M14 22 L28 22 L20 50Z" fill="url(#gemLeft)"/>
<path d="M50 22 L36 22 L44 50Z" fill="url(#gemRight)"/>
<path d="M28 22 L36 22 L32 50Z" fill="url(#gemTop)"/>
<path d="M14 22 L50 22 L44 22 L32 14 L20 22Z" fill="#f4ecff" opacity="0.5"/>
</svg>

After

Width:  |  Height:  |  Size: 976 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://uwdmiagx2i0m"
path="res://.godot/imported/slot_gem.svg-3de6fe2b7f75e9c8cb236d31df99300e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/icons/slots/slot_gem.svg"
dest_files=["res://.godot/imported/slot_gem.svg-3de6fe2b7f75e9c8cb236d31df99300e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+14
View File
@@ -0,0 +1,14 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64">
<defs>
<linearGradient id="giftBody" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#ffe08a"/>
<stop offset="100%" stop-color="#d99a1b"/>
</linearGradient>
</defs>
<rect x="12" y="26" width="40" height="30" rx="3" fill="url(#giftBody)" stroke="#8a5a08" stroke-width="1.5"/>
<rect x="10" y="18" width="44" height="10" rx="3" fill="#ffcf4d" stroke="#8a5a08" stroke-width="1.5"/>
<rect x="28" y="18" width="8" height="38" fill="#e0432c"/>
<path d="M24 18c-6-2-9-8-4-12 5-3 10 4 8 12Z" fill="#e0432c"/>
<path d="M40 18c6-2 9-8 4-12-5-3-10 4-8 12Z" fill="#e0432c"/>
<ellipse cx="20" cy="34" rx="5" ry="3" fill="#ffffff" opacity="0.35"/>
</svg>

After

Width:  |  Height:  |  Size: 771 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dhmuowv14d8w"
path="res://.godot/imported/slot_gift.svg-cd4b23128a05bdfe620f908a0c1209a9.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/icons/slots/slot_gift.svg"
dest_files=["res://.godot/imported/slot_gift.svg-cd4b23128a05bdfe620f908a0c1209a9.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+12
View File
@@ -0,0 +1,12 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64">
<defs>
<linearGradient id="flaskGlass" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#baf7d6"/>
<stop offset="100%" stop-color="#22c55e"/>
</linearGradient>
</defs>
<path d="M26 6h12v14l12 24a6 6 0 0 1-5.4 8.6H19.4A6 6 0 0 1 14 44l12-24Z" fill="url(#flaskGlass)" stroke="#0f7a3a" stroke-width="2"/>
<rect x="24" y="4" width="16" height="6" rx="2" fill="#0f7a3a"/>
<path d="M33 26 27 38h5l-3 10 9-14h-5Z" fill="#ffffff" opacity="0.9"/>
<ellipse cx="22" cy="36" rx="4" ry="10" fill="#ffffff" opacity="0.25"/>
</svg>

After

Width:  |  Height:  |  Size: 643 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ckm4ojjcs7ieq"
path="res://.godot/imported/slot_potion.svg-9999b1edd902aa62dc18a3a287a24a1b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/icons/slots/slot_potion.svg"
dest_files=["res://.godot/imported/slot_potion.svg-9999b1edd902aa62dc18a3a287a24a1b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false
+12
View File
@@ -0,0 +1,12 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64">
<defs>
<linearGradient id="shieldBody" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#7fb4ff"/>
<stop offset="55%" stop-color="#2563eb"/>
<stop offset="100%" stop-color="#12377a"/>
</linearGradient>
</defs>
<path d="M32 4 52 12v16c0 16-9 26-20 32C21 54 12 44 12 28V12Z" fill="url(#shieldBody)" stroke="#0b1f4d" stroke-width="1.5"/>
<path d="M32 4 52 12v6L32 10 12 18v-6Z" fill="#ffffff" opacity="0.25"/>
<path d="M24 30h16v6l-8 10-8-10Z" fill="#ffffff" opacity="0.9"/>
</svg>

After

Width:  |  Height:  |  Size: 609 B

+43
View File
@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://1ufnf4addccr"
path="res://.godot/imported/slot_shield.svg-8ab2381618dec7ec2bf42c10159a32f7.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/icons/slots/slot_shield.svg"
dest_files=["res://.godot/imported/slot_shield.svg-8ab2381618dec7ec2bf42c10159a32f7.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false