Compare commits

...

13 commits

Author SHA1 Message Date
Lea ac2046ec1c Merge pull request 'Add Recipe Book' (#2) from lucy/ponk:recipe-book into master
All checks were successful
Create zip and upload release / release (push) Successful in 30s
Reviewed-on: #2
2023-08-26 10:50:53 +00:00
BlackDemonFire c2796dd977
Add Recipe Book 2023-08-26 09:57:27 +02:00
Lea 7c63a7566e Add pack icon and update description
All checks were successful
Create zip and upload release / release (push) Successful in 10s
2023-07-12 00:56:31 +02:00
Lea d42f72771e bees but epic
All checks were successful
Create zip and upload release / release (push) Successful in 45s
2023-07-11 21:55:42 +02:00
Lea 33c45de449 add image to readme
All checks were successful
Create zip and upload release / release (push) Successful in 45s
2023-07-11 21:20:27 +02:00
Lea 6715f690ba pink-ify end portal shader
All checks were successful
Create zip and upload release / release (push) Successful in 40s
2023-07-11 21:17:07 +02:00
Lea 05a4a49de6 clean up shaders, change xp orb colour 2023-07-11 20:46:15 +02:00
Lea 336ca81adf messing around with the beacon shader
All checks were successful
Create zip and upload release / release (push) Successful in 19s
2023-07-11 16:17:25 +02:00
Lea 8d6acdfef0 add textures for diamond related blocks
All checks were successful
Create zip and upload release / release (push) Successful in 16s
2023-07-11 14:56:33 +02:00
Lea a62b7071f0 texture diamond armour
All checks were successful
Create zip and upload release / release (push) Successful in 13s
2023-07-11 14:19:54 +02:00
Lea cb6c0f2a88 change textures for empty slot icons
All checks were successful
Create zip and upload release / release (push) Successful in 15s
2023-07-11 13:59:00 +02:00
Lea 0b93f6681c retexture diamond items
All checks were successful
Create zip and upload release / release (push) Successful in 12s
2023-07-11 13:48:16 +02:00
Lea e21d11b987 [skip ci] updated readme
All checks were successful
Create zip and upload release / release (push) Successful in 14s
2023-07-11 12:54:33 +02:00
55 changed files with 247 additions and 3 deletions

View file

@ -2,11 +2,13 @@
## Screenshots ## Screenshots
<img src="assets/creative-inventory.png" height=300 /> <img src="assets/survival-inventory.png" height=300 /> <img src="assets/creative-inventory.png" height=300 /> <img src="assets/survival-inventory.png" height=300 /> \
<img src="assets/hotbar.png" width=680 /> \
<img src="assets/beacon-portal-armor.png" width=680 />
## Download ## Download
This pack targets Minecraft **1.19.4**, but since it doesn't use any of Minecraft's advanced features it should work with pretty much any other version as well. (If it doesn't, let me know!) This pack targets Minecraft **1.19.4**, but it should work fine on any version from 1.17 above. Older versions might lack some features but should be mostly fine as well!
You can grab the latest **ponk.zip** [from the **Releases** tab](https://git.amogus.cloud/Lea/ponk/releases/latest)! You can grab the latest **ponk.zip** [from the **Releases** tab](https://git.amogus.cloud/Lea/ponk/releases/latest)!
If you plan on using this on a server, also set `resource-pack-sha1` in your `server.properties` to the content of `ponk.zip.sha1`. If you plan on using this on a server, also set `resource-pack-sha1` in your `server.properties` to the content of `ponk.zip.sha1`.
@ -32,6 +34,8 @@ There is a script that simplifies the development workflow. Simply pass the path
It will copy the `pack` directory to it, and update it every time something changes. After making a change, simply hit **F3+T** to tell Minecraft to reload! \ It will copy the `pack` directory to it, and update it every time something changes. After making a change, simply hit **F3+T** to tell Minecraft to reload! \
(You will need to enable the pack first, of course.) (You will need to enable the pack first, of course.)
> You might have to install `inotify-tools` or a similar package depending on your distribution
### Extracting the original textures from Minecraft ### Extracting the original textures from Minecraft
Since all textures are variants of the game's original textures, you most likely need those first. Since all textures are variants of the game's original textures, you most likely need those first.

Binary file not shown.

After

Width:  |  Height:  |  Size: 682 KiB

BIN
assets/hotbar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,42 @@
#version 150
#moj_import <fog.glsl>
uniform sampler2D Sampler0;
uniform mat4 ProjMat;
uniform vec4 ColorModulator;
uniform float FogStart;
uniform float FogEnd;
uniform vec4 FogColor;
in vec4 vertexColor;
in vec2 texCoord0;
out vec4 fragColor;
vec4 pink = vec4(0.957, 0.722, 0.859, 1);
// This file slightly alters the colour of the beacon beam
void main() {
vec4 color = texture(Sampler0, texCoord0);
color *= vertexColor * ColorModulator;
float fragmentDistance = -ProjMat[3].z / ((gl_FragCoord.z) * -2.0 + 1.0 - ProjMat[2].z);
float nuts = 0.0;
/* this is an excuse for me to play around with shaders but i guess it also looks kinda cool */
if (fragmentDistance > 10) {
nuts = 1.0;
} else {
nuts = fragmentDistance / 10;
}
nuts /= 3;
nuts += 0.25;
color.rgb = mix(color.rgb, pink.rgb, nuts);
fragColor = linear_fog(color, fragmentDistance, FogStart, FogEnd, FogColor);
}

View file

@ -0,0 +1,74 @@
#version 150
#moj_import <matrix.glsl>
uniform sampler2D Sampler0;
uniform sampler2D Sampler1;
uniform float GameTime;
uniform int EndPortalLayers;
in vec4 texProj0;
// removed the `const` keyword here because we're going to modify these values in main()
vec3[] COLORS = vec3[](
vec3(0.022087, 0.098399, 0.110818), // weird foreground layer?
vec3(0.011892, 0.095924, 0.089485), // stars in background
vec3(0.027636, 0.101689, 0.100326), // also stars
vec3(0.046564, 0.109883, 0.114838), // more stars
vec3(0.064901, 0.117696, 0.097189), // the stars are getting bigger
vec3(0.063761, 0.086895, 0.123646), // take a guess
vec3(0.084817, 0.111994, 0.166380), // bigger stars
vec3(0.097489, 0.154120, 0.091064), // would almost consider them foreground objects now
vec3(0.106152, 0.131144, 0.195191), // .
vec3(0.097721, 0.110188, 0.187229), // .
vec3(0.133516, 0.138278, 0.148582), // !
vec3(0.070006, 0.243332, 0.235792), // !!
vec3(0.196766, 0.142899, 0.214696), // !!!
vec3(0.047281, 0.315338, 0.321970), // the turquoise thingies going from left to right
vec3(0.204675, 0.390010, 0.302066), // green things going from top to bottom
vec3(0.080955, 0.314821, 0.661491) // blue things going from right to left
);
const vec3 PINK = vec3(0.898, 0.541, 0.749);
const mat4 SCALE_TRANSLATE = mat4(
0.5, 0.0, 0.0, 0.25,
0.0, 0.5, 0.0, 0.25,
0.0, 0.0, 1.0, 0.0,
0.0, 0.0, 0.0, 1.0
);
mat4 end_portal_layer(float layer) {
mat4 translate = mat4(
1.0, 0.0, 0.0, 17.0 / layer,
0.0, 1.0, 0.0, (2.0 + layer / 1.5) * (GameTime * 1.5),
0.0, 0.0, 1.0, 0.0,
0.0, 0.0, 0.0, 1.0
);
mat2 rotate = mat2_rotate_z(radians((layer * layer * 4321.0 + layer * 9.0) * 2.0));
mat2 scale = mat2((4.5 - layer / 4.0) * 2.0);
return mat4(scale * rotate) * translate * SCALE_TRANSLATE;
}
out vec4 fragColor;
void main() {
// start at 1 because we don't want to change the foreground noise here
for (int i = 1; i < 16; i++) {
float intensity = float(i) / 16.0;
COLORS[i] = mix(COLORS[i], PINK, intensity * 0.7);
}
// slightly shift foreground to pink as well :3
COLORS[0] = mix(COLORS[0], PINK, 0.15);
vec3 color = textureProj(Sampler0, texProj0).rgb * COLORS[0];
for (int i = 0; i < EndPortalLayers; i++) {
color += textureProj(Sampler1, texProj0 * end_portal_layer(float(i + 1))).rgb * COLORS[i];
}
fragColor = vec4(color, 1.0);
}

View file

@ -0,0 +1,50 @@
#version 150
#moj_import <fog.glsl>
#moj_import <hue_shift.glsl>
uniform sampler2D Sampler0;
uniform vec4 ColorModulator;
uniform float FogStart;
uniform float FogEnd;
uniform vec4 FogColor;
in float vertexDistance;
in vec4 vertexColor;
in vec2 texCoord0;
in vec2 texCoord1;
in vec4 normal;
in vec4 tintColour;
out vec4 fragColor;
/**
* This changes the colour of XP orbs.
*
* I stole some of the code from this funky individual (planet minecraft, point and laugh):
* https://www.planetminecraft.com/texture-pack/rainbow-xp-vanilla/
*
* Simply hue shifting the XP colours worked sufficiently well for me, but if I wanted
* better control over the resulting colours I'd have to put more effort into this.
* The resulting colour pulses between purple and dark pink.
*/
void main() {
vec4 color = texture(Sampler0, texCoord0) * vertexColor * ColorModulator;
if (color.a < 0.1) {
discard;
}
// detect xp orbs using their tint colour
vec4 col255 = tintColour * 255;
if(
0 <= col255.r && col255.r <= 255 &&
253 <= col255.g && col255.g <= 255 &&
0 <= col255.b && col255.b <= 51
) {
color = vec4(hueShift(color.rgb, 160), color.a);
}
fragColor = linear_fog(color, vertexDistance, FogStart, FogEnd, FogColor);
}

View file

@ -0,0 +1,43 @@
#version 150
#moj_import <light.glsl>
#moj_import <fog.glsl>
in vec3 Position;
in vec4 Color;
in vec2 UV0;
in vec2 UV1;
in ivec2 UV2;
in vec3 Normal;
uniform sampler2D Sampler2;
uniform mat4 ModelViewMat;
uniform mat4 ProjMat;
uniform mat3 IViewRotMat;
uniform int FogShape;
uniform vec3 Light0_Direction;
uniform vec3 Light1_Direction;
out float vertexDistance;
out vec4 vertexColor;
out vec2 texCoord0;
out vec2 texCoord1;
out vec2 texCoord2;
out vec4 normal;
out vec4 tintColour;
// This file is modified to pass `tintColour` as output.
void main() {
gl_Position = ProjMat * ModelViewMat * vec4(Position, 1.0);
vertexDistance = fog_distance(ModelViewMat, IViewRotMat * Position, FogShape);
vertexColor = minecraft_mix_light(Light0_Direction, Light1_Direction, Normal, Color) * texelFetch(Sampler2, UV2 / 16, 0);
tintColour = Color;
texCoord0 = UV0;
texCoord1 = UV1;
texCoord2 = UV2;
normal = ProjMat * ModelViewMat * vec4(Normal, 0.0);
}

View file

@ -0,0 +1,28 @@
#version 150
// https://gist.github.com/mairod/a75e7b44f68110e1576d77419d608786
vec3 hueShift( vec3 color, float hueAdjust ) {
const vec3 kRGBToYPrime = vec3 (0.299, 0.587, 0.114);
const vec3 kRGBToI = vec3 (0.596, -0.275, -0.321);
const vec3 kRGBToQ = vec3 (0.212, -0.523, 0.311);
const vec3 kYIQToR = vec3 (1.0, 0.956, 0.621);
const vec3 kYIQToG = vec3 (1.0, -0.272, -0.647);
const vec3 kYIQToB = vec3 (1.0, -1.107, 1.704);
float YPrime = dot (color, kRGBToYPrime);
float I = dot (color, kRGBToI);
float Q = dot (color, kRGBToQ);
float hue = atan (Q, I);
float chroma = sqrt (I * I + Q * Q);
hue += hueAdjust;
Q = chroma * sin (hue);
I = chroma * cos (hue);
vec3 yIQ = vec3 (YPrime, I, Q);
return vec3( dot (yIQ, kYIQToR), dot (yIQ, kYIQToG), dot (yIQ, kYIQToB) );
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 709 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 421 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 424 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 371 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 346 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 334 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 127 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 240 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 124 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 120 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 421 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 592 B

View file

@ -1,6 +1,9 @@
{ {
"pack": { "pack": {
"pack_format": 13, "pack_format": 13,
"description": ":3" "description": {
"text": "~w~",
"color": "#FDE4F2"
}
} }
} }

BIN
pack/pack.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB