Page 2 of 2

Re: Laser projector

PostPosted: Wed Jun 01, 2011 10:09 pm
by HavingPhun
Just so everyone knows I am still working on this and I should hopefully have a new version that can do videos and be completly proggramable. I am also working through many bugs so since I dont have the new one done yet please tell me if you have found errors in previous versions and what you think I should do to improve it.
The new version will include:
>>>The ability to show videos
>>>A scan and change method instead of tons of lasers
>>>Less lag
>>>Proggramability

This version wont be very high res because i want to prove I can do it first. There will also be problems making this when at very high resolutions. Thanks for the helping with this!!

Re: Laser projector

PostPosted: Thu Jun 02, 2011 2:23 pm
by FuzzyLogicBrain
are you having fun, spammer?

Re: Laser projector

PostPosted: Thu Jun 02, 2011 9:31 pm
by HavingPhun
Spammer? :wtf: I dont think thats spam but explain why you think this?

Re: Laser projector

PostPosted: Thu Jun 02, 2011 9:49 pm
by FuzzyLogicBrain
Because he posted his message in three different forums. That's bigbird who has a tiny bird brain!

Re: Laser projector

PostPosted: Thu Jun 02, 2011 9:52 pm
by HavingPhun
Are you talking about me HavingPhun because I only posted my message one time in this forum only. Or was there another person/spambot that got deleted?

Re: Laser projector

PostPosted: Thu Jun 02, 2011 10:06 pm
by HavingPhun
Oh sorry FuzzyLogicBrain since the spamot got deleted I thought it was me you were talking about!

Re: Laser projector

PostPosted: Thu Jun 02, 2011 11:50 pm
by Someone Else
And that, humans, is part of why you should never reply to spambots. ;)

The first reason is this, as I discovered the first and only time I ever replied to one:
Somebody wrote:When you reply to a spambot, you look like an idiot. Especially after the spam is deleted.


The other, as beautifully showcased in this topic, is:
Somebody wrote:When you reply to a spambot, and the spam post is deleted, the person who posted immediately before the spam might think you are aiming your post at them.


But this is off-topic.

Re: Laser projector

PostPosted: Fri Jun 03, 2011 12:01 am
by FuzzyLogicBrain
:evil: :P sorry, I keep forgetting!

Re: Laser projector

PostPosted: Fri Jun 03, 2011 12:16 am
by Someone Else
I suppose the reason I don't forget is that the first time I did, I found (after RicH pointed me in the right direction) that I really looked like an idiot.

Re: Laser projector

PostPosted: Fri Jun 03, 2011 11:13 am
by RicH
Aww. You make me feel special. :cry:

Re: Laser projector

PostPosted: Fri Jun 03, 2011 2:34 pm
by FuzzyLogicBrain
your the guy who makes jokes. we like making fun of you. make a come back.

Re: Laser projector

PostPosted: Sat Jun 04, 2011 4:44 pm
by RicH
FuzzyLogicBrain wrote:your the guy who makes jokes. we like making fun of you. make a come back.

Hm. It appears you are quite resentful to me, up to the point that you come out of nowhere and make no effort to even follow the conversation. Problems?

Re: Laser projector

PostPosted: Sat Jun 04, 2011 8:44 pm
by FuzzyLogicBrain
Problems? You!

Re: Laser projector

PostPosted: Sun Jun 05, 2011 2:49 am
by RicH
Why? Rage issues? :lol:

Re: Laser projector

PostPosted: Sun Jun 05, 2011 3:00 am
by HavingPhun
So to get back on topic have you tried this scene? Do you like it? Do you have any suggestions,bugs or improvments you can think of?

Re: Laser projector

PostPosted: Sun Jun 05, 2011 6:33 am
by Someone Else
Maybe.

The Internet on the computer where I have Algodoo is officially spazzing out on me now, so I will try to download tomorrow.

And then, you will have feedback foisted upon you, like it or not.

Re: Laser projector

PostPosted: Sun Jun 05, 2011 6:10 pm
by HavingPhun
Ok but what I have uploaded so far is pretty bad but it shows the basic idea of what I am gonna make and how it works. Also the one on the first post is the one I am talking about it is my best one online.

Re: Laser projector

PostPosted: Wed Jul 27, 2011 8:24 pm
by HavingPhun
Hi i still wanna do this but i have to fix some problems so tell me what you would think this should have once I get the working version out.

Re: Laser projector

PostPosted: Thu Jul 28, 2011 12:36 am
by Someone Else
I think the thing to do would be to sort of follow Paradigm's lead. To an extent.
Rating: rated 8
Filesize: 16.9 kB
Comments: 9
Ratings: 12
download


You'll want to place each frame, once it's completed, into an array. You'll probably want a big array, containing the entirety of each frame, containing each row in that frame, containing each pixel in that row, containing the color of that pixel.

So, the opacity of pixel 5, row 4, frame 2 would be scene.my.video(2)(4)(5)(3) = 1.
Note that the earliest frame, the top row, and the leftest pixel are all labeled 0.

onCollide, can easily be changed to onHitByLaser, each pixel will need this code:
Code: Select all
e.this.row = 0;
e.this.column = 0;
(e.this) -> {color = {scene.my.videoFrameCurrent(row)(column)}}


Upon running the video, you'll want this:
Code: Select all
{scene.my.playVideo} ? {
    scene.my.currentFrame = scene.my.currentFrame + 1;
    scene.my.videoFrameCurrent = scene.my.video(scene.my.currentFrame)
} : {}


onCollide, each very light circle on the coloring pad receives this code:
Code: Select all
e.this.row = 0;
e.this.column = 0;
scene.my.frameCurrent = scene.my.arrayChange(
    scene.my.frameCurrent, row, scene.my.arrayChange(
        scene.my.frameCurrent(row), column, e.other.color
    )
);
{! scene.my.playVideo} ? {scene.my.videoFrameCurrent = scene.my.frameCurrent} : {}


The "Save Display As Next Frame" button gets this code:
Code: Select all
scene.my.video = scene.my.arrayChange(scene.my.video, scene.my.currentFrame)


There would have to be Play, Pause, and Stop buttons, I'll let you code these yourself.

And finally:
Credit to Gradyfitz and Karatebrot on these. I edited and straightened them up a bit.
Code: Select all
Scene.my.arraySize = (array) => {
    a := array ++ ["enD"];
    n := 0;
    SizeUnknown := true;
    for(65, (i)=>{{SizeUnknown && ("" + a(i) == "enD")} ? {
        n = i;
        SizeUnknown = false } : { }
    });
    n
};

scene.my.ArrayChange = (array, pos, value) => {
    result := [];
    for(scene.my.arraySize(array), (i)=>{
    {i == n} ? {
            result = result ++ [value]
        } : {
            result = result ++ [array(i)]
        }
    });
    result
}

Re: Laser projector

PostPosted: Thu Feb 09, 2012 1:19 am
by HavingPhun
This is about what I was thinking of doing. Thanks for all of that, but I don't know when I will make this if ever. I have been using algodoo alot less lately so it could be awhile till I actually make this. But for the programming part of the projector. I was thinking something along the lines of have blocks that drop through a scanner (laser) that would pick up the colors and or the coordinates of the pixel it describes and then change it. But im thinking some new kind of method would have to be made to handle huge amounts of pixels. Atleast maybe break each section of the screen into several pieces to reduce the size of the arrays and then handle each of those individually. But then if we wanted some special effects like blending colors and good shading then it might have to have some kind of thing where it scans the pixels colors and then decides based in what areas they are in and the way they are positioned. But then even if an efficient way to handle large amounts of pixels was created there is still the lag to worry about. Also shouldnt the code you posted above eliminate the need for lasers? Is the last code portion you posted supposed to sort through an array? Im wondering do you think the arrays of pixels should be sorted through in order or have the system jump through the arrays? Sorry if some of this doesnt make sense thats how my ideas come out. :D I guess I should try to work on this.

Re: Laser projector

PostPosted: Thu Apr 12, 2012 11:53 pm
by HavingPhun
I want to say that I will not work on this anytime soon like I said in that post^. But the real reason why is because I am horrible at thyme and every time I save the scene and one part of the thyme does'nt work I have to restart completly on the thyme that I programmed.