MADRIX Forum • My experience with Madrix impressions and questions
Page 1 of 1

My experience with Madrix impressions and questions

Posted: Mon May 23, 2016 7:38 pm
by Bobby Bobsen
Hey Guys,
I am using Madrix since January this year. I am working in a Club in Germany/Sinsheim called Kinki Palace as a Light Jockey. We have 2 LED walls, the bigger one (2nd picture) has 640x480 resolution. The smaller one (1st picture obviously) has 128x16 resolution. We use them mostly for advertisement but I started to look more into Madrix. I just hate the step things, because of that, I started scripting. I just love it when the Light goes with the Sound. My main problem is performance and crashes in Madrix. When it comes to scripting/programming I like to have a lot of freedom to do whatever I want to get to perfection.
I added one of my first scripts i have done and I would like to hear your opinion. I have A LOT of ideas (and if i say a lot, i mean 14 DIN A4 sites full with ideas) but I cant really do them, due to lack of performance and possibilities. I hope I can get some feedback from you guys.

Best regards

Bobby

P.S: Sorry for my bad English :P
Here is an example of a script that I am using.

Code: Select all

void InitEffect()
{
}
void PreRenderEffect()
{
	MapDlgSetTileMode(MAP_TILE_REPEAT);
	MapDlgSetRotationMode(MAP_ROTATION_LOOP, MAP_ROTATION_LOOP, MAP_ROTATION_LOOP);

	int Type = GetBassType();
	float Tone = GetBassTone();
	float Value = GetBassValue();
	float RngX = random (0.0005, 0.003);
	float RngY = random (0.0001, 0.002);
	float RngZ = random (0.0008, 0.001);
	float TurnX;
	float TurnY;
	float TurnZ;
	if(Type > -1)
	{

		TurnX = Value - Tone;
		TurnY = Value - Tone;
		TurnZ = Value - Tone;
		MapDlgSetRotationVector( TurnX * 0.003, TurnY * 0.002, TurnZ * 0.001);
	}
	else
		MapDlgSetRotationVector( 0.05, 0.05, 0.05);
		
}
void PostRenderEffect()
{

}
void MatrixSizeChanged()
{
	InitEffect();
}
93f450e5179d9ff2fa90517f519f5f2a.jpg
93f450e5179d9ff2fa90517f519f5f2a.jpg (821.14 KiB) Viewed 24849 times


ae53a0bc37369180442deb1c6a004e81.jpg
ae53a0bc37369180442deb1c6a004e81.jpg (901.62 KiB) Viewed 24849 times

Re: My experience with Madrix impressions and questions

Posted: Thu May 26, 2016 2:24 pm
by Guertler
Hello Bobby Bobsen,
Welcome to the MADRIX forum.
.
I have looked through the posted script. There are some functions which return a integer value and you assign it to a float variable. Thatswhy you will get some compiler warnings. You can prevent this by doing a typecast like:

Code: Select all

float Tone = (float)GetBassTone();
float Value = (float)GetBassValue();
or you assign the function to an integer variable like:

Code: Select all

int Tone = GetBassTone();
int Value = GetBassValue();
and convert it to a float variable when you need it.
.
The variables RngX, RngY and RngZ are not used in your posted script.
Nevertheless the assigned functions of this variables will always retrun 0 in your example because the random function in MADRIX will work with inter parameters. If you will hand over a float number it will cut off the decimals.
.
The posted script will calculated 50 times a second a new value for the rotation speed parameters in the mapping. This is a huge amount of rotation speed changes. I'm not shure if you can see this huge amount as visual effect on the LED wall.

Re: My experience with Madrix impressions and questions

Posted: Thu May 26, 2016 11:15 pm
by Bobby Bobsen
Hey Guertler,
thank you for the reply. Yes that is right, that's the reason I didn't used those variables. I should have checked for that. Thanks with the float information, I'll change it so they are forced to be floats. That is my first script I created and yes, you actually see it on the screen. We use it mostly for Hip Hop. If we use it, because the lack of performance. But that has nothing to do with the Script. I hope together we can find a possibility to either step up the quality or even both.

Best regards

Bobby