Creative, often comedic, a bit crazy (paranoid schizophrenia), educated (MS EE), self-unemployed (on disability), workaholic, playaholic, no longer an alcoholic (cannabis anyone?).
OK, so I created a 3D web page that is also a virtual world that you can explore. It's largely complete now (what software is ever fully complete?), so I invite you to visit
Metaverse Core! Actually I did post about it a while back in the General Discussion forum but got zero responses. That really confused me and here's why: I think it's a semi-big deal!
The way I understand it, the first big effort at 3D virtual world web pages was VRML, which failed because it required users to download and install a Plug-in (or so I was told). Most of us cringe at installing anything on our mochines for various reasons, I guess mainly fear of the unknown and lack of familiarity, so it's not surprising that this might be the case.
Enter Processing, specifically Processing.js, with all of it's lovely modern 3D capability designed with user interaction in mind as well as a few other features and we have the makings of a 3D virtual world web page yet again but this time no plugin required! There is the minor issue that IE users can't run these 3D web pages but all emerging tech has such limitations anyway.
So I'd like to once again (and now that it's largely complete) "Share My Work" with you all in the hopes that you can educate me on what role such a beast might eventually play in the grande scheme of things. The Metaverse Core 3D web page is a simple one, kind of slow moving actually, in which you pilot a cute little UFO around a cartoonie version of a solar system. Each celestial body is represented by a sphere, has text, and also links to another web page. Also there is an image floating around near the sun of a wireframe apple just to show that images work too.
So it has text, images (2D and 3D), and links - it's a web page! It's a game! It could be a presentation or a news broadcast or a subatomic particle demonstrator or a fashion show or whatever you want, all in glorious 3D virtual world splendor! It can run fast and dazzling or slow and smooth, however you like. Now I ask you, isn't that something kind of cool? I kind sorta feel as if Processing has, as I said in the post title, made the future vision of the past become a reality today.
So three cheers for Processing, 3D worlds and web pages in general, and a pat on the back of yours truly for realizing that it could be done (prolly following in the footsteps of others as is usually the case). I invite you to add your two cents and (gently) correct any misinformation i've babbled about here, and please if you have a moment to respond, do a little brainstorming on this. It's way cool!
I've written a cute little game app for Android in Processing and I'd like to publish it to the Google Play Store as a free app. After giving it my best shot, I do not seem to have the skillz to properly install Eclipse and go thru the publication process, besides the fact that such formalities as gathering a EULA and whatnot are quite frankly very frustrating for me. So "bink" light bulb! Idea: Why not ask someone to do this for me?
With all the difficulty of the publication process, at least until the Processing Team makes it easy for us, I feel that someone could fill a niche by doing this for others. You could do it for pay or for a percentage of profit for the paid apps and maybe have some fun and enjoy a little profit as well.
Truth be told, I have an informal organization consisting now of two individuals who work on projects together, combining their skill sets to produce something that is on the whole greater than the sum of it's parts. Titled "Designers Coalition", this fledgeling organization is open to new members if anyone is interested. You can participate just a little or a whole lot according to your whim and fancy, so no risk involved.
Back to the main point, I'm interested in collaboration developing Android apps, desktop programs, and Processing.js web pages with whoever might be similarly inclined. I could go on with details but suffice to say that the door is open! Thanks for reading and carry on!
Hi, when I try to run on an emulator I get the following item. I do not have a usb cable or a fast pc so I installed Eclipse on my Mac mini server. I followed all the instructions except instead of using a cable, which I cannot (for now), I attempted to set up an emulator. It looks to me like the build fails with 100 errors of the following example:
Description
Resource
Path
Location
Type
Invalid package reference in library; not included in Android: java.awt. Referenced from processing.mode.android.AndroidSDK.
processing-core.jar
/Pixles_5/libs
line 1
Android Lint Problem
Hi again, I'm hooked of writing Android games! This week I will work on publishing my first one, but one thing is missing - sound. I did find some other posts titled on the same subject but they would not open up in my browser (Google Chrome on Windows 7).
Anyway, I'd love to add sound of any sort whatsoever, especially playing audio tracks but also generating sound from sine waves and the like. Any suggestions? Thanks in advance!
I am now programming Android apps on my android phone! There is no Android native IDE so what I do is set up a VNC connection to my Mac mini server, code up the app, and then transfer the debug.apk file to the phone via dropbox. This is slow typing but it frees me from being a desk potato. I am no longer tethered to a desk!
Hi, I discovered another way to develop and share apps with friends. This technique distributes the debug version of the app. All you do is find the debug version, put into your free account at
www.dropbox.com, then download it with the dropbox app on your Android phone. The dropbox app, I accidentally discovered, will install the app with a few clicks and open it up for you also.
Then when you want a friend to get a copy of your app(s), you just give them access to that dropbox folder and theoretically they can get the app also. I have not tested the friend getting the app part yet, but it should work, not entirely sure.
It's a great workflow for development too because you don't need a cable tethering your computer to your phone. Please note that I have no connection with dropbox, and I am just a user of dropbox. Hopefully this will help some folks!
First, love the book, the software, and want to name my firstborn after Daniel Sauter! (hope it's not a girl - Danella?)
Now to the point: I am working with code adapted from the Device Locator example on page 87 which involves communications with a server using the loadStrings(url) function. Basically what happens is that when the loadStrings(url) function runs, the server does not execute the php script from page 344, preferring instead to send the php script contents. I know this because the "Last Server Message:" printed is "<?", which is the first line of the php script.
The server is a rented Mac mini and I have full access to the machine. I purchased and installed Server.app from our friends at Apple and have been using that to administer the server's Apache program. I can provide code snippets of how I have used the Device Locator code in my code upon request.
I think I will try running the example itself next, though I expect the same results - we shall see! Any help will be greatly appreciated.
I have been working on a 3D web page using Processing. It's coming along well and looks nothing like your typical 2D web page at all - actually it's sort of game-like. I have questions and such, but first let's have a look at the 3D web page itself:
Load it up in Google Chrome (preferred) or FireFox (works ok), but not Internet Explorer (does not work at all), and you will be treated to a blue page with white letters that are the instructions, plus a large black window that is the 3D web page. Read the instructions for info about navigating the world and then check it out!
I didn't know what to put in this 3D web page until a friend who is just completing a cancer survival effort (wow, like I have problems, right?) told me he was feeling sick and down, so I asked him if he wanted a planet. He said "yes", and Danger's Crystallized Gingerbread World was born. Soon other friends wanted worlds and I have just about filled up the first solar system. Pressing space bar warps you to the second solar system, in which my bestie Amber chose to own the Sun.
Each world has a name, a message, and a web link. If you see the web link on the screen that you like (which you see by being close to that world), then pressing either <enter> key will take you to the web site. Also there is an image of a digitized apple in gray floating around near the starting point. That's because I thought "what does a web page need at minimum?" Answer: Text, Images, and Links. Well, thanks to Processing and processing.js, we have all that.
My friend Lieven who is a web developer told me that the 3D Web was attempted about 10 years ago, and it failed. I asked him why and he said "Flash Plugin". Remember the days of plugins? Didn't you just grind your teeth at them? Yeah, plugins sucked (apologies to those who helped develop them, but yeah they sucked). They were sort of like a developmental phase that you are glad when it's over like your toddler's "Terrible Two's" stage or whateverr. Well we cut our teeth on Flash Plugins, the 3D web died, and now looking back we are coming to the realization that "Hey, with Processing we can do this and do it right this time!"
Well at least I hope that's what others are thinking 'cause I sure am. I doubt that anyone will be surprised to see metaverse core in action, just it's pleasant to see that it can be done. I figure we need a 3D Library for it, maybe someone wants to make a 3D browser (I'm told they exist, but require Flash), or whatever else. My friends and I also have fantasies of writing 3D frontends for things like google search engine and/or facebook.
You can of course just grab the javascript and start playing with it yourself (and please do so if you are in a hurry), but if you can spare a moment for a reply to this post or an email to me, I'd greatly appreciate it. Please note that the email to which I pay attention these days is:
and not the inventoralchemi@gmail.com that this account will offer you. Of course, I need not mention that my cutsey little UFO / Space theme is just one possibility. Urban Apocalypse, Undersea Adventure, Molecular Level, Heaven or Hell, take your pick of themes in which you could view the 3D web that (surely?) is about to emerge! With that I bid you peace...
Here is a fun little sprite entertainer, a sort of not-a-game where your finger motion launches a sprite travelling across the screen, creating interesting patterns. The sprite comes from an example on the tutorials, i believe the transformations tutorial but not sure. I am just learning how to write Android apps and thought I'd share this one. I'd publish it as a free app if I knew how (can't wait for that to get automated). Enjoy!
I've been attempting to create a clent/server setup where the client is a Processing javascript sketch and the server is a Processing program running on my server. The other day I studied up on it using The Processing web based learning that's available and also w3schoold.com which of course teaches nearly all things related to web programming. By piecing together examples and code snippets from four programming languages, I have struutred a way to make it probably work.
I will tell you the tech later, but suffice to say you just write a specially coded HTML5 web page to run the Processing javascript. Then you throw in a little of your own javascript using the jQuerry library to perform AJAX functions, specifically the $.put() function. This will enable the javascript client to send information to the server program. Also in another post to this forum I describe and donate an interesting stream of pixels based video link from the werver to the client.
Combining these elements and some additional work on the server side, we can then have the capability to do many things. Any related discussion would be most interesting and useful, thanks.
Greetings my fellow Processing fans of all skills and involvements, I bring you good news and tidings of joy! Yes, you get the Christmas / Holiday seasonal reference because I feel like jolly old Saint Nick himself right now, sharing a rather curious gift with you. Here is the scenario (and bear with me, the tech follows soon):
For Christmas in March this year, we wake up with glee, anticipation and eyes filled with wonder and make our way to the dazzling tree under which lies many gifts including a curious little box wrapped with paper displaying many small polka dots of various colors. Exclaiming joy with a shout, we select this present to open first and bring it to our parents who are sleepily smiling after a long night of something that parents enjoy and children know not (heeee).
Quickly we unwrap this new toy, wondering what it may be. Inside the box we find a pair of translucent red casino dice, the six-sided variety naturally, and to our amazement we also find a tiny scroll, how unexpected this is! We examine the scroll, noticing that it is printed on thermal paper using a dot matrix print head, the style of which was once ubiquitous long before our time.
Slowly we unroll the scroll as our parents watch with knowing smiles, for they understand what they have given us. Upon it's medium brown, slightly smeared thermal printed surface we see code. In fact it is Processing code - we recognize it from watching our parents program Processing sketches in their home office on the second floor of our house. Eagerly seeking to know what this code might actually do, we read the comments at the top which tell us the following:
// Pointillism Video Streaming Algorithm Library for Processing
//
// concept by Inventor Alchemi
// code by several contributors from the processing.org forum
//
// This library implements the Pointillism Video Streaming Algorithm
// in a few of its more fundamental flavors including these versions:
// This library and the algorithm that it is based upon are freely given
// to the Processing community for distribution under the license of
// their choice.
//
By now you can probably take a pretty good guess at describing the algorithm implemented by the library that was printed on the scroll for the young programmer to explore under his or her parent's guidance. To be clear about it all, I will explain the algorithm that I imagineered approximately 48 hours ago on 8/20/2013 in the wee hours of the morning. First, however I will just quickly comment upon the originality of the algorithm.
When you create anything that is original, you "invent" it yourself. Often however as time unfolds and awareness of prior art increases, you discover the existence of prior art which to me makes your act of creation actually be properly named a "reinvention". Usually the reinvention has some unique, novel aspects to it because it really was your original idea albeit not the first ever, so you probably imagined it in a somewhat different way than shown in the prior art. This may or may not be enough for a patent or copyright, or intellectual property protection may not be an issue at all if you plan to just give away the idea as I am doing here.
So please allow me to state that whether this video streaming technique be invention, reinvention or whatever else, I give it freely to the Processing community as a thank-you gift for giving me the Processing language and related software. This does not mean that I give the Pointillism algorithm to the world freely, it means that the entity that represents the Processing community, whatever that legally is, now owns the intellectual property rights, be they of any value or originality or not.
That said, here is how Pointillism Video Streaming is intended to work:
The context is a client-server downstream video transmission such as a web page based client written in Processing and targeted to javascript which receives a continuous stream of data from the server, which is also written in Processing. The processing.net library is used to perform the client-server communications and other related functions, providing the transmit layer at and below Processing's positioning in the hierarchy of all programming and scripting language.
The operation of the algorithm within that context is that the server generates a psuedorandomly selected <X, Y> 2D vector which selects just one of all the pixels of the rendered Processing scene, then reads that pixel's color and sends the vector <X, Y, c>, where c is the color, downstream to the client. Receiving this Pseudorandom Pixel Stream, if we may call it that, the client Processing sketch immediately draws the transmitted color, c, at location <X, Y> on the screen. This repeats for pixel after pixel indefinitely.
So now the cat is out of the bag and surely you can think of some advantages and disadvantage of this Pointillism algorithm as well as some possible implementations as described by the acronyms made up in the scroll's comments above this writing. I rather fancy the use of synchronously seeded pseudorandom generators on the client and the server so that the <X, Y> vector need not be transmitted, and the delta, focus, and size algorithm modifications you can imagine from their acronyms.
Well my fellow Processing coders, I am tired now after a long night on the web and all this typing, so I will take my leave of you now and have a little nap in my comfy bed. I do hope that this post is of some value to someone somewhere, at the very least. Enjoy your imagineering, and thank you for reading my silly story.
Hi, first let me say that the entire Processing community deserves a million kudos and a one way ticket to Heaven or Paradise or whatever you believe in, cause Processing is the answer to my prayers for my application. It is so well suited that i giggle with glee sometimes, however I naturally do have some technical issues to resolve and have been banging my head against the wall until i finally decided to try the forum. In a smarter moment I might have tried the forum earlier, but hey whatever right? So here goes with my primary question, others to be asked in other posts:
Aight, question is: what is the best way to display the contents of a P3D graphics window on a client's web browser?
Currently I have implemented a crude klunky mechanism of saving the rendered image to disk as .jpg file and then displaying it on a self-reloading web page. I know, I know, that's totally amateurish! Well after 33 years of programming, i find myself juggling four unknown programming languages (Proessing, HTML5, PHP, and javascript) and doing something, anything at all, just to get a result with the intention of improving it later.
Next I decided to make the client software be Processing javascript as I learned more and understood the larger picture a bit better. It all goes well but I cannot actually display the file itself. And besides, there must be a better way, some way to get good framerates and no flashing between frames and all that jazz.
So wizards and gurus, amateurs and middleweights, Processing programmers of all experience levels, I invite you to do a little imagineering for my project, and for that I thank you in advance!