Notgames Forum
December 09, 2024, 08:44:01 PM *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
   Home   Help Search Calendar Login Register  
Pages: 1 [2] 3 4 ... 7
  Print  
Author Topic: I want to make something, instead of thinking about how to make it.  (Read 236175 times)
Kjell

Posts: 129


View Profile
« Reply #15 on: September 15, 2010, 01:14:20 PM »

Quote
Just being able to create your own box with the connectors you need and then hiding its contents seems like an obviously good idea. But that must be possible in at least some of these visual languages?

Virtools does exactly that ( and does it extremely well ).
Logged
Erik Svedäng

Posts: 194



View Profile WWW
« Reply #16 on: September 15, 2010, 01:34:45 PM »

Ok, cool. Thanks for the info, will try to have a look at it!
Logged
Kjell

Posts: 129


View Profile
« Reply #17 on: September 15, 2010, 01:45:00 PM »

Quote
Thanks for the info, will try to have a look at it!

Good luck with that Tongue
Logged
Erik Svedäng

Posts: 194



View Profile WWW
« Reply #18 on: September 15, 2010, 05:35:23 PM »

Heh, I watched a youtube clip instead. Looks pretty neat.
Logged
Jeroen D. Stout

Posts: 245



View Profile WWW
« Reply #19 on: September 16, 2010, 04:59:38 PM »

I find this thread interesting, I very much switch between artist and programmer and graphical ways of programming make me climb curtains. I remember using Virtools and having stacks of boxes for what would have been 5 simple lines of C++.

But I did program games for many years now so I have now adjusted to it... to me, programming is part of knowing how to use a hammer. It will take ages upon ages to do anything functional, but the same goes for all production for games.

Part of me just wants to mumble that being able to program is much like being able to use a hammer if you want to make statues - but I would be more interested if someone could provide some storyboard or script as to how they imagine the right interface for them would work. There ought to be some space for making things like that, even if it would be beyond me at present.

Do you just want a graphical representation of what code would normally do (which is Virtools) or more of a semantic interface?
Logged
Erik Svedäng

Posts: 194



View Profile WWW
« Reply #20 on: September 16, 2010, 08:39:42 PM »

Argh, after some research it seems like someone has already started working on what I was planning to revolutionize the software industry with Wink http://www.youtube.com/watch?v=PsPX0nElJ0k  I hope they at least don't patent it because I want to use very similar ideas but in a more beautiful and less "corporate" looking way.

Anyway... in a way I totally agree with you Joeren, code can be very elegant and to the point. Expressing "x = 5 * cos(t)" or something with nodes is not going to be an improvement. Also, almost all programming languages lets you define your own words so that you can do things like "if(lion.angry) then human.runAway()" which is very powerful since it reads so nicely. Tracing lines across the screen just doesn't seem as good.

But I also think that code as it looks and works today is definitely sub-optimal for most people and I think it's great if we can think of how to improve upon it. Sounds like a really fun challenge to me! (and would definitely be good for the notgames cause)
« Last Edit: September 16, 2010, 08:41:37 PM by Erik Svedäng » Logged
Michaël Samyn

Posts: 2042



View Profile WWW
« Reply #21 on: September 17, 2010, 12:38:07 AM »

There's a lot of text in that video, Erik!...  Grin

Please don't underestimate how powerful and enabling a "straighforward" graphical interface can be. This is not about reinventing the wheel necessarily. The "spaghetti" of the Max/MSP screenshot is just an example of sloppy work. But some people like this. In Quest3D, you can collapse branches of the flowchart in folders. Or you can simply make hundreds and hundreds of different flowcharts that all call each other with parameters, etc.

This is what part of The Path looks like in Quest3D (this makes a character walk to a swing and sit down):

This works from top to bottom, from left to right. The entire flowchart is called every frame when running, starting with the orange box at the top.
The dark blue boxes are callers to other flow charts, called "channel groups" in Quest3D. The orange box at the top allows for other groups to call this one.


It doesn't matter that it is more cumbersome to connect two "value" boxes to an "operator" box instead of simply typing "5+4". The point, for me, of graphical programming, is not to make the work faster, it's to allow me to be more creative, to experiment more, to "paint with algorithms". Even if it takes more time to set up, and is not as elegant, the fact that I can see the logic makes all the difference to my brain.

When I look at the flowchart above, I see how the logic works. Without having to decipher any code. Maybe this is different for engineers. But my brain is happy when it can look at flowcharts instead of text.
« Last Edit: September 17, 2010, 12:42:05 AM by Michaël Samyn » Logged
Kjell

Posts: 129


View Profile
« Reply #22 on: September 17, 2010, 03:02:22 AM »

Quote
Expressing "x = 5 * cos(t)" or something with nodes is not going to be an improvement.

You're right, that's why you use a calculator block Smiley



Quote
Also, almost all programming languages lets you define your own words so that you can do things like "if(lion.angry) then human.runAway()" which is very powerful since it reads so nicely.

You ( can ) still have that in visual programming obviously.



Personally I think the whole concept of programming is too peculiar for outsiders regardless of presentation. A tool that enables anybody to create a video game would have to be closer to human "language".
Logged
QXD-me

Posts: 136



View Profile WWW
« Reply #23 on: September 17, 2010, 04:21:49 AM »

I would say that code, can be very intuitively read if you use lots of OOP to make it more like sentences (as Erik said) and also if you use an IDE which colours keywords in nicely for you (this makes things a lot more readable or me). Although there will definatley be times when more graphical methods are easier to use, such as long if-else blocks... kinda like in that snippet from the Path's program. I guess everyone beat me to the key points.

And "paint with algorithms". That's a great phrase, you should use it more often. I would use it all the time, but I don't think I'd ever have call for it. I also didn't really see why you'd want a graphical interface until you said that. I was thinking how it would be exactly the same but just with boxes instead of code, then that phrase gave me an apithany (kind of), as though programming were like writing a script for the program to follow, while doing it graphicly is more hands on, more like making/shaping something.

That last paragraph should have had more of a point. Somehow my thoughts always get lost in translation between my brain and my mouth/writings.  Lips sealed


- 3DVIA Studio is the ( spiritual ) successor to 3DVIA Virtools
- 3DVIA Virtools is expensive, 3DVIA Studio is free*
- 3DVIA Studio is currently in Public Beta
I'd come across this website before but never figured out why they had so many products which all seemed to do the same thing. Now, finally I understand. Cheesy
Logged
badvibration

Posts: 16



View Profile
« Reply #24 on: September 17, 2010, 05:46:17 AM »

That last paragraph should have had more of a point. Somehow my thoughts always get lost in translation between my brain and my mouth/writings.  Lips sealed

haha don't worry, happens to me all the time.

Code bubbles looks intriguing. I like the way you can use it to re-arrange the code and how it connects multiple bubble to an adjacent one. It also seems much cleaner for analyzing segments of code and editing it, but is that all it's for? I mean, do you have to import your code into the IDE first and then open them into the separate bubbles so you can further work on them? That's what I got out of it anyway, it's a really cool idea and allows for much cleaner programming, but I don't see me using it. Hopefully people expand on this idea, like Erik, and make into something marvelous.
Logged
Erik Svedäng

Posts: 194



View Profile WWW
« Reply #25 on: September 17, 2010, 07:20:21 PM »

Yeah, "code bubbles" is a lot of text. But at least it's presented in a way that emphasis the flow through the code in the same way flowchart-code does. I think its a clear improvement. If you chop up your functions into really short ones (something that code gurus often encourage) you'd get almost (sorta...) the same look as Quest3D (which uses text inside all boxes it seems).

Very interesting to see the "The Path" code. I like that I can remember the shape of the tree and easily go back to places I've "visited". It's pretty hard for me to understand exactly how it works though; for example "if -> A -> Ending?" at the top seems very cryptic Tongue

Both "painting with algorithms" and "programming with natural language" seems very intriguing. I know that the program environment Director used to have some kind of programming language that kinda looked like normal english, but they seem to have changed it into something boring c++looking crap. Here's a link: http://en.wikipedia.org/wiki/Lingo_(programming_language)
« Last Edit: September 17, 2010, 07:28:50 PM by Erik Svedäng » Logged
Erik Svedäng

Posts: 194



View Profile WWW
« Reply #26 on: September 17, 2010, 07:24:00 PM »

But then of course there's also this discouraging quote:

"Projects promoting programming in "natural language" are intrinsically doomed to fail." -- Edsger Dijkstra
Logged
badvibration

Posts: 16



View Profile
« Reply #27 on: September 18, 2010, 04:25:22 AM »

It seems as though programming in "natural language" would not only be hard to create but also, I think it might even be harder to learn than regular coding. There's too many multiple ways of saying the same thing, not only replacing certain words with others, but using a completely different sentence, as well as the many different dialects that people use. It would probably make you relearn your own language, certain habits and sentence structures, in order to make it work properly/efficiently. I don't know that's just what I think.
Logged
Kjell

Posts: 129


View Profile
« Reply #28 on: September 18, 2010, 03:31:51 PM »

@ Erik & badvibration - Agreed. I didn't mean "language" ( hence the quotes ) in the literal sense, but in the way a teacher guides a dancer, or kids explain a game on the street as they go.
Logged
Erik Svedäng

Posts: 194



View Profile WWW
« Reply #29 on: September 18, 2010, 03:34:22 PM »

An "interesting" thing would be if ambiguity in the language could be executed in a non-deterministic way. Of course it would be hell to debug but it could maybe lead to a more organic feel with opportunities for discoveries and "play", like Michaël was talking about.
Logged
Pages: 1 [2] 3 4 ... 7
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2008, Simple Machines Valid XHTML 1.0! Valid CSS!