Omnimaga: The Coders Of Tomorrow
Welcome, Guest. Please login or register.
 
Omnimaga: The Coders Of Tomorrow
21 May, 2013, 20:55:20 *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
   home   news downloads projects tutorials misc forums rules new posts irc about Login Register  
+-OmnomIRC

You must Register, be logged in and have at least 40 posts to use this shout-box! If it still doesn't show up afterward, it might be that OmnomIRC is disabled for your group or under maintenance.

Note: You can also use an IRC client like mIRC, X-Chat or Mibbit to connect to an EFnet server and #omnimaga.

Pages: [1] 2 3   Go Down
  Print  
Author Topic: [Axiom] Advanced Graphics [in development] -  (Read 2110 times) Bookmark and Share
0 Members and 1 Guest are viewing this topic.
ZippyDee
LV8 Addict (Next: 1000)
********
Offline Offline

Gender: Male
Last Login: 12 May, 2013, 10:03:36
Date Registered: 21 March, 2011, 03:15:07
Location: Yes.
Posts: 704


Topic starter
Total Post Ratings: +73

View Profile
« on: 27 February, 2012, 23:02:50 »
+6

This has been in the works for a few weeks now, so I thought I'd make a thread about it.

I began writing this Axiom with a fixed-memory flood fill routine, but I failed miserably. I finally convinced jacobly to give it a try. Together we completely optimized the algorithm and he was able to write an awesomely optimized version. Then I started working on a filled circle algorithm, which jacobly volunteered to convert to Axiom format for me, but a few *cough* bugs were found. He has since been working with me to fix those bugs. All-in-all, this is basically an Axiom by both jacobly and myself.

This Axiom will be a collection of more advanced graphics routines which we hope will be greatly useful for graphics programs, and potentially games as well. Some of the routines will definitely NOT be useful for games, due to speed issues.

Currently written:
  • Fixed-Memory Flood Fill (needs optimization)
"Fixed-memory" means there is no risk for stack overflow AT ALL. However, the routine is subsequently very slow, so it will not be suitable for games or anything that needs fast dynamic area filling. It would be fine for a "paint bucket" tool in most on-calc graphics programs though. This will *hopefully* support grayscale filling as well.
  • Filled Circles (aaalmost done)
Fully clipped filled circle routine with variable buffer and variable fill type (on/off/invert) using numerical arguments.

Kinda sorta planned:
  • Vertical/Horizontal Line Segments (on/off/invert)
  • Clipped Lines (on/off/invert)
  • Rectangles (on/off/invert)
  • Rectangle outlines (on/off/invert)
  • Ellipses?

Any other suggestions for what this axiom could have?
« Last Edit: 28 February, 2012, 07:41:09 by ZippyDee » Logged

There's something about Tuesday...


Pushpins 'n' stuff...

DJ Omnimaga
Retired Omnimaga founder (Site issues must be PM'ed to Netham45, Eeems, Shmibs, Deep Thought and AngelFish, not me.)
Editor
LV15 Omnimagician (Next: --)
*
Offline Offline

Gender: Male
Last Login: Today at 08:22:03
Date Registered: 25 August, 2008, 07:00:21
Location: Québec (Canada)
Posts: 50208


Total Post Ratings: +2613

View Profile WWW
« Reply #1 on: 27 February, 2012, 23:20:58 »
0

So I assume that is what you and Jacobly have been discussing on IRC at night in the past week or so, right? It seems nice as there seems to have been a lot of work being done on this so far. Screenshots would be nice to showcase the routines and how fast they were (make programs where you move the shapes/lines around and stuff maybe).

Clipped lines would be very handy for Boot2490's project, because he wanted to do some sort of GlassCars clone in Axe, but more Mario Kart style.

Glad it has on/off/invert too. no more need to manually invert the entire LCD everytime we draw lines. Tongue
Logged

Retired 83+ coder, Omnimaga/TIMGUL founder. Now doing power metal music (formerly did electronica)

Follow me on Bandcamp|Facebook|Reverbnation|Youtube|Twitter|Myspace
Hayleia
Programming Absol
LV11 Super Veteran (Next: 3000)
***********
Offline Offline

Last Login: Today at 19:30:13
Date Registered: 01 June, 2011, 20:12:47
Location: ud-ud ?
Posts: 2047


Total Post Ratings: +254

View Profile
« Reply #2 on: 27 February, 2012, 23:27:08 »
0

Great idea Cheesy
May Jacobly post here so he can be +1'd too ?

Any other suggestions for what this axiom could have?
Ellipses and filled ellipses (I don't really know how it is called in English but I guess it is called like that).
Logged





Spoiler for what I am according to...:
me: useless
Pokemon Test: an Absol
turiqwalrus: an eggplant
p2: A HUMAN BEING !
Blackpilar and p2: iplantonlyplantwantplanttoplantknowplantifplantyouplantareplantaplantboyplantorplantaplantgirlplant
click here to know where you got your last +1s
squidgetx
Food.
Coder Of Tomorrow
LV10 31337 u53r (Next: 2000)
*
Offline Offline

Gender: Male
Last Login: Today at 18:24:17
Date Registered: 30 May, 2010, 19:54:18
Location: eating somewhere
Posts: 1831


Total Post Ratings: +476

View Profile
« Reply #3 on: 27 February, 2012, 23:28:45 »
0

This sounds cool, I'm sure a lot of people will find it useful. Good luck!
Logged

Read my webcomic! | My SoundCloud
Projects:

Check out the demo now!- Current progress: battle engine and stuff
Proud author of: Cuberunner | SpaceDash | The Psyche | XXEdit | AxeSynth | StickNinja | Gravity Guy | Embers:Phoenix | Zombie Gun
Axe: Need help optimizing?
User of Axe | zStart | TokenIDE | CalcGS | MirageOS
ZippyDee
LV8 Addict (Next: 1000)
********
Offline Offline

Gender: Male
Last Login: 12 May, 2013, 10:03:36
Date Registered: 21 March, 2011, 03:15:07
Location: Yes.
Posts: 704


Topic starter
Total Post Ratings: +73

View Profile
« Reply #4 on: 27 February, 2012, 23:33:14 »
0

Great idea Cheesy
May Jacobly post here so he can be +1'd too ?

Any other suggestions for what this axiom could have?
Ellipses and filled ellipses (I don't really know how it is called in English but I guess it is called like that).

Ellipses are not nearly as easy as circles, but that *might* find its way into the Axiom at some point...We certainly need to get this filled-circle routine done first.
Logged

There's something about Tuesday...


Pushpins 'n' stuff...

LincolnB
Check It Out Now
LV9 Veteran (Next: 1337)
*********
Offline Offline

Gender: Male
Last Login: Yesterday at 05:36:22
Date Registered: 02 May, 2011, 00:56:28
Location: Utah Valley
Posts: 1114


Total Post Ratings: +121

View Profile
« Reply #5 on: 27 February, 2012, 23:34:34 »
0

Some form of curves, I'm not sure syntactically how the function would be called, would be nice. Also, being able to do everything on multiple buffers would be really nice.
Logged

Completed Projects:
   >> Spacky Emprise   >> Spacky 2 - Beta   >> Fantastic Sam
   >> An Exercise In Futility   >> GeoCore

My Current Projects:

Projects in Development:
In Medias Res - Contest Entry

Talk to me if you need help with Axe coding.


Spoiler for Bragging Rights:
Not much yet, hopefully this section will grow soon with time (and more contests)


ZippyDee
LV8 Addict (Next: 1000)
********
Offline Offline

Gender: Male
Last Login: 12 May, 2013, 10:03:36
Date Registered: 21 March, 2011, 03:15:07
Location: Yes.
Posts: 704


Topic starter
Total Post Ratings: +73

View Profile
« Reply #6 on: 27 February, 2012, 23:35:04 »
0

Some form of curves, I'm not sure syntactically how the function would be called, would be nice. Also, being able to do everything on multiple buffers would be really nice.
All commands will have variable buffer arguments.
Logged

There's something about Tuesday...


Pushpins 'n' stuff...

aeTIos
You got stair'd!
LV12 Extreme Poster (Next: 5000)
************
Online Online

Gender: Male
Last Login: Today at 20:36:48
Date Registered: 15 September, 2010, 06:00:00
Location: Netherlands, Overijssel
Posts: 3118


Total Post Ratings: +120

View Profile
« Reply #7 on: 27 February, 2012, 23:39:17 »
0

Ellipses are EASY. No, no offense. You can draw an ellipse (unfortunately only horizontal and vertical) using multipliers on the sine andor cosine.
Logged

If something above sounds rude, feel free to vote it down, it was not meant to be rude<<lolol
--Always stay relAXEd!--


Spoiler for Hidden:


[







Spoiler for Still Alive:
This was a triumph.
I'm making a note here: HUGE SUCCESS.
It's hard to overstate my satisfaction.

Aperture Science:
We do what we must because we can.
For the good of all of us
Except the ones who are dead.

But there's no sense crying over every mistake
You just keep on trying till you run out of cake
And the science gets done and you make a neat gun
For the people who are still alive.

I'm not even angry.
I'm being so sincere right now.
Even though you broke my heart and killed me.
And tore me to pieces.
And threw every piece into a fire.
As they burned it hurt because
I was so happy for you.

Now these points of data make a beautiful line
And we're out of beta we're releasing on time.
So I'm GLaD I got burned think of all the things we learned
For the people who are still alive.

Go ahead and leave me.
I think I prefer to stay inside.
Maybe you'll find someone else to help you.
Maybe Black Mesa -
THAT WAS A JOKE. HA HA, FAT CHANCE.
Anyway, this cake is great:
It's so delicious and moist.

Look at me still talking when there's science to do.
When I look out there it makes me GLaD I'm not you.
I've experiments to run there is research to be done
On the people who are still alive

And believe me I am still alive.
I'm doing science and I'm still alive.
I feel FANTASTIC and I'm still alive.
While you're dying I'll be still alive.
And when you're dead I will be still alive.

Still alive
Still alive
ZippyDee
LV8 Addict (Next: 1000)
********
Offline Offline

Gender: Male
Last Login: 12 May, 2013, 10:03:36
Date Registered: 21 March, 2011, 03:15:07
Location: Yes.
Posts: 704


Topic starter
Total Post Ratings: +73

View Profile
« Reply #8 on: 27 February, 2012, 23:41:13 »
0

Ellipses are EASY. No, no offense. You can draw an ellipse (unfortunately only horizontal and vertical) using multipliers on the sine andor cosine.
You think we calculate the sin/cos of every point on this circle? These routines use integer arithmetic. Calculating the sin/cos of every point would be really slow and unnecessary. Sure, it's POSSIBLE, but there are better ways to do it. Implementing those better ways is what is difficult.
Logged

There's something about Tuesday...


Pushpins 'n' stuff...

DJ Omnimaga
Retired Omnimaga founder (Site issues must be PM'ed to Netham45, Eeems, Shmibs, Deep Thought and AngelFish, not me.)
Editor
LV15 Omnimagician (Next: --)
*
Offline Offline

Gender: Male
Last Login: Today at 08:22:03
Date Registered: 25 August, 2008, 07:00:21
Location: Québec (Canada)
Posts: 50208


Total Post Ratings: +2613

View Profile WWW
« Reply #9 on: 27 February, 2012, 23:41:57 »
0

Question, how does the line routine speed compares to the built-in Axe one?
Logged

Retired 83+ coder, Omnimaga/TIMGUL founder. Now doing power metal music (formerly did electronica)

Follow me on Bandcamp|Facebook|Reverbnation|Youtube|Twitter|Myspace
ZippyDee
LV8 Addict (Next: 1000)
********
Offline Offline

Gender: Male
Last Login: 12 May, 2013, 10:03:36
Date Registered: 21 March, 2011, 03:15:07
Location: Yes.
Posts: 704


Topic starter
Total Post Ratings: +73

View Profile
« Reply #10 on: 27 February, 2012, 23:43:10 »
0

Question, how does the line routine speed compares to the built-in Axe one?
Well, that's a good question...It hasn't been written yet, so I can't answer it Tongue

There has been talk that if a clipped line routine is developed, Axe would use that one and this axiom might instead implement a non-clipped line routine for people who want the extra speed and don't need clipping.
Logged

There's something about Tuesday...


Pushpins 'n' stuff...

jacobly
LV4 Regular (Next: 200)
****
Offline Offline

Last Login: Today at 16:16:47
Date Registered: 09 October, 2011, 01:53:09
Posts: 199

Total Post Ratings: +149

View Profile
« Reply #11 on: 27 February, 2012, 23:44:01 »
+3

Circles anyone? Cheesy

Hint: trying pressing arrow keys, +, -, *, /, enter, and clear to exit.

* cirdraw.8xp (1.17 KB - downloaded 15 times.)
Logged
DJ Omnimaga
Retired Omnimaga founder (Site issues must be PM'ed to Netham45, Eeems, Shmibs, Deep Thought and AngelFish, not me.)
Editor
LV15 Omnimagician (Next: --)
*
Offline Offline

Gender: Male
Last Login: Today at 08:22:03
Date Registered: 25 August, 2008, 07:00:21
Location: Québec (Canada)
Posts: 50208


Total Post Ratings: +2613

View Profile WWW
« Reply #12 on: 27 February, 2012, 23:49:59 »
0

Question, how does the line routine speed compares to the built-in Axe one?
Well, that's a good question...It hasn't been written yet, so I can't answer it Tongue

There has been talk that if a clipped line routine is developed, Axe would use that one and this axiom might instead implement a non-clipped line routine for people who want the extra speed and don't need clipping.
Oh ok. I was wondering since I am curious if for a 3D program like boot2490's it would be fast enough to allow a game to be playable.
Circles anyone? Cheesy

Hint: trying pressing arrow keys, +, -, *, /, enter, and clear to exit.
That looks nice and seems quite fast actually. Here's a screenshot by the way Cheesy


* sircles.gif (1088.09 KB, 192x128 - viewed 355 times.)
Logged

Retired 83+ coder, Omnimaga/TIMGUL founder. Now doing power metal music (formerly did electronica)

Follow me on Bandcamp|Facebook|Reverbnation|Youtube|Twitter|Myspace
LincolnB
Check It Out Now
LV9 Veteran (Next: 1337)
*********
Offline Offline

Gender: Male
Last Login: Yesterday at 05:36:22
Date Registered: 02 May, 2011, 00:56:28
Location: Utah Valley
Posts: 1114


Total Post Ratings: +121

View Profile
« Reply #13 on: 27 February, 2012, 23:54:19 »
0

Looks very cool - but I'm not sure I got my question about curves (not ellipses) answered.
Logged

Completed Projects:
   >> Spacky Emprise   >> Spacky 2 - Beta   >> Fantastic Sam
   >> An Exercise In Futility   >> GeoCore

My Current Projects:

Projects in Development:
In Medias Res - Contest Entry

Talk to me if you need help with Axe coding.


Spoiler for Bragging Rights:
Not much yet, hopefully this section will grow soon with time (and more contests)


ZippyDee
LV8 Addict (Next: 1000)
********
Offline Offline

Gender: Male
Last Login: 12 May, 2013, 10:03:36
Date Registered: 21 March, 2011, 03:15:07
Location: Yes.
Posts: 704


Topic starter
Total Post Ratings: +73

View Profile
« Reply #14 on: 28 February, 2012, 00:00:38 »
0

Looks very cool - but I'm not sure I got my question about curves (not ellipses) answered.
What kind of curves are you talking about? Bezier curves? Michael_Lee wrote an axe program to do Bezier Curves a while ago. I think it's in the Axe routines thread.

Also, another screenshot of circles:


* circle-demo.gif (660.11 KB, 192x128 - viewed 353 times.)
Logged

There's something about Tuesday...


Pushpins 'n' stuff...

Pages: [1] 2 3   Go Up
  Print  
 
Jump to:  

Powered by EzPortal
Powered by MySQL Powered by SMF 1.1.18 | SMF © 2013, Simple Machines Powered by PHP
Page created in 0.322 seconds with 30 queries.
Skin by DJ Omnimaga edited from SMF default theme with the help of tr1p1ea.
All programs, games and songs avaliable on this website are property of their respective owners.
Best viewed in Opera, Firefox, Chrome and Safari with a resolution of 1024x768 or above.