* Modification de l'apparence de l'UI des dialogues * Changement de l'ordre de déblocage des mutations * Ajout d'une confirmation pour l'abandon * Ajout de la scène de fin avec la base Boréa, en tant que fin de démo * Modification des icône de durée de vie, temps de pousse, et de mort * Ajout d'un icône au dessus du joueur quand il n'a plus d'énergie * Amélioration des dialogues du jeu * Changement du modèle du téléphone * Ajout de cellule d'énergie et de cellule de talion trouvable sur la carte * Il est à nouveau possible de se recharger après la fin d'une région * Buff des mutations ancien sociale et solide * Modification de la mutation fertile (ne donne de gain de graine qu'à la maturation) * Ajout d'une récupération automatique des graines * Ajout de deux cartons de tutoriel ainsi qu'une option pour les revoir dans l'aide de jeu * Amélioration générale du tutoriel * Ajout d'un écran titre digne de ce nom * Lors de l'arrivée à destination, ne téléporte plus le joueur sur une map vide, mais directement dans les lieux de cinématique * Ajout graphique de plus de pattern de mousse et de roche * Le talion apparait maintenant sur toute la carte * La roche peut désormais apparaitre sur la zone de départ * Ajout dud modificateur de région Canyon * Equilibrage général * Fix de bugs en tout genre
46 lines
1.1 KiB
Plaintext
46 lines
1.1 KiB
Plaintext
shader_type canvas_item;
|
|
|
|
uniform float line_number = 6;
|
|
uniform vec4 line_color : source_color = vec4(1.);
|
|
uniform float line_thickness : hint_range(0.0, 0.01) = 0.001;
|
|
uniform bool inverse_result = false;
|
|
|
|
const mat3 sobel_x = mat3(
|
|
vec3( 1.0, 2.0, 1.0),
|
|
vec3( 0.0, 0.0, 0.0),
|
|
vec3(-1.0, -2.0, -1.0)
|
|
);
|
|
|
|
const mat3 sobel_y = mat3(
|
|
vec3(1.0, 0.0, -1.0),
|
|
vec3(2.0, 0.0, -2.0),
|
|
vec3(1.0, 0.0, -1.0)
|
|
);
|
|
|
|
float sample_quantized(sampler2D text, vec2 uv) {
|
|
return ceil(texture(text, uv).r * line_number) / line_number;
|
|
}
|
|
|
|
void fragment() {
|
|
float gx = 0.0;
|
|
float gy = 0.0;
|
|
|
|
for (int x = 0; x < 3; x++) {
|
|
for (int y = 0; y < 3; y++) {
|
|
vec2 offset = vec2(float(x) - 1.0, float(y) - 1.0) * line_thickness;
|
|
float s = sample_quantized(TEXTURE, UV + offset);
|
|
gx += s * sobel_x[x][y];
|
|
gy += s * sobel_y[x][y];
|
|
}
|
|
}
|
|
|
|
float edge = length(vec2(gx, gy));
|
|
float line = step(0.0001, edge);
|
|
|
|
float alpha = line * line_color.a * COLOR.r;
|
|
|
|
if (inverse_result)
|
|
alpha = 1. - line * line_color.a;
|
|
|
|
COLOR = vec4(line_color.rgb, alpha);
|
|
} |