Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fcd829e79f | |||
| a3d9baf18c | |||
| 3903149549 | |||
| 4d984d1e28 |
+4
-1
@@ -117,9 +117,12 @@ make -f Makefile.dev release-arch
|
||||
- [x] Printable PDF of default scr/fx
|
||||
- [x] Add NanoKontrol setup file
|
||||
- [x] Find and fix opengl errors 0500 ?
|
||||
- [ ] Bonus
|
||||
- [ ] Improvements
|
||||
- [ ] Record show as text files
|
||||
- [ ] Play from record text file
|
||||
- [ ] Key codes as inputs
|
||||
- [ ] Mouse position and scroll as inputs
|
||||
- [ ] Fixes
|
||||
- [ ] Try to write NanoKontrol config
|
||||
- [ ] Investigate video device fps loss (bad unregister ?)
|
||||
- explore libv4l directly [github](https://github.com/philips/libv4l) (with `-lv4l2`)
|
||||
@@ -54,6 +54,7 @@ clean-release:
|
||||
configure~ \
|
||||
depcomp \
|
||||
**/.deps \
|
||||
**/**/.deps \
|
||||
$(TARGET) \
|
||||
$(TARGET)-*.tar.gz \
|
||||
$(TARGET)-*.pkg.tar.zst \
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
pkgname=forge-steel
|
||||
pkgver=1.0.0
|
||||
pkgver=1.0.1
|
||||
pkgrel=1
|
||||
pkgdesc="Fusion Of Real Time Generative Effects"
|
||||
arch=('i686' 'pentium4' 'x86_64' 'arm' 'armv7h' 'armv6h' 'aarch64' 'riscv64')
|
||||
depends=('glfw>=1:3', 'v4l-utils>=1.32', 'alsa-lib>=1.2', 'libglvnd>=1.7')
|
||||
url="https://github.com/klemek/forge-steel"
|
||||
source=("${pkgname}-steel-${pkgver}.tar.gz::https://github.com/klemek/forge-steel/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.gz")
|
||||
sha256sums=('da61207bc8af1b71544f5e35e99e7ea8dbbb72b77c0c7dc21f05ba694c28cdfa')
|
||||
sha256sums=('b2345c1a87f6b5b13dcce6a237a3f9a9ddb7fa9c3e982f5e164e7d7fef5725f3')
|
||||
srcdir=build
|
||||
backup=("usr/share/${pkgname}")
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ Here are some pointers if you want to customize your FORGE experience:
|
||||
|
||||

|
||||
|
||||
FORGE is an engine rendering a project into visuals.
|
||||
FORGE is an graphical engine rendering a project into visuals.
|
||||
|
||||
Using OpenGL GLSL language, it talks to your graphic card to generate layers of textures defined by the fragment shaders and outputs it to your screen.
|
||||
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
AC_INIT([forge], [steel-1.0.0], [klemek.dev@proton.me])
|
||||
AC_INIT([forge], [steel-1.0.1], [klemek.dev@proton.me])
|
||||
AM_INIT_AUTOMAKE
|
||||
AC_PROG_CC
|
||||
|
||||
|
||||
+2
-1
@@ -12,6 +12,7 @@ out vec4 fragColor;
|
||||
#include inc_magic.glsl
|
||||
#include inc_functions.glsl
|
||||
|
||||
uniform int iDemo;
|
||||
uniform sampler2D iTex7;
|
||||
uniform sampler2D iTex8;
|
||||
uniform int iSeed7;
|
||||
@@ -26,7 +27,7 @@ void main() {
|
||||
|
||||
float k = mean(color_a);
|
||||
|
||||
mix_value = mix(mix_value * 0.9 + 0.05, mix_value, 1 - iDemo);
|
||||
mix_value = mix(mix_value, mix_value * 0.9 + 0.05, iDemo);
|
||||
|
||||
fragColor = mix(color_b, color_a, mix_type ? step(mix_value, k) : mix_value);
|
||||
}
|
||||
@@ -13,6 +13,7 @@ uniform vec2 iInputResolution2;
|
||||
uniform int iInputFormat1;
|
||||
uniform int iInputFormat2;
|
||||
|
||||
uniform int iDemo;
|
||||
uniform int iAutoRand;
|
||||
uniform int iPage;
|
||||
uniform int iSelected;
|
||||
@@ -99,6 +100,7 @@ vec4 debug(vec2 vUV)
|
||||
float mfx_value = magic(iMidi2_3[6].xy, vec3(1, 0, 0), iSeed8);
|
||||
bool mfx_invert = magic_trigger(vec3(iMidi2_3[6].z, 0, 0), iSeed8);
|
||||
float mix_value = magic(iMidi3_1[1].xy, vec3(1, 0, 0), iSeed7);
|
||||
mix_value = mix(mix_value, mix_value * 0.9 + 0.05, iDemo);
|
||||
bool mix_type = magic_trigger(vec3(iMidi3_1[0].x, 0, 0), iSeed7 + 10);
|
||||
|
||||
// logic
|
||||
|
||||
@@ -3,13 +3,11 @@
|
||||
#ifndef INC_MAGIC
|
||||
#define INC_MAGIC
|
||||
|
||||
uniform int iDemo;
|
||||
|
||||
vec2 magic_f(vec2 F, vec3 B, float i)
|
||||
{
|
||||
return vec2(
|
||||
mix(F.x, randTime(i + 1), min(1, B.z + iDemo)),
|
||||
mix(F.y, randTime(i + 2), min(1, B.z + iDemo))
|
||||
mix(F.x, randTime(i + 1), min(1, B.z)),
|
||||
mix(F.y, randTime(i + 2), min(1, B.z))
|
||||
);
|
||||
}
|
||||
|
||||
@@ -21,9 +19,9 @@ vec2 magic_f(float i)
|
||||
vec3 magic_b(vec3 B, float i)
|
||||
{
|
||||
return vec3(
|
||||
mix(B.x, step(0.2, randTime(i + 3)), min(1, B.z + iDemo)),
|
||||
mix(B.y, step(0.5, randTime(i + 4)), min(1, B.z + iDemo)),
|
||||
min(1, B.z + iDemo)
|
||||
mix(B.x, step(0.2, randTime(i + 3)), min(1, B.z)),
|
||||
mix(B.y, step(0.5, randTime(i + 4)), min(1, B.z)),
|
||||
min(1, B.z)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
#ifndef INC_SRC
|
||||
#define INC_SRC
|
||||
|
||||
uniform int iDemo;
|
||||
|
||||
uniform sampler2D iTex0;
|
||||
uniform sampler2D iTex3;
|
||||
uniform sampler2D iTex4;
|
||||
|
||||
Reference in New Issue
Block a user