Author Topic: Isometric Engine  (Read 28529 times)

0 Members and 1 Guest are viewing this topic.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Isometric Engine
« Reply #15 on: August 31, 2009, 03:49:22 pm »
Keep in mind that to download Celtic, you must first register (and validate) a forum account on United-TI. For some reasons, they disabled attachments for guests a few months ago.

Offline Iambian

  • Coder Of Tomorrow
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 739
  • Rating: +216/-3
  • Cherry Flavoured Nommer of Fishies
    • View Profile
Re: Isometric Engine
« Reply #16 on: August 31, 2009, 04:15:25 pm »
EDIT: Link was fixed

The BOXSHIFT command is nowhere near "fully" implemented. That command still needs to be tested and once I can get the logic down correctly, I'll be finishing up with the rest of the code to bring it to fully implemented status.

Though, I would like to hear about how it *could* be implemented. You know, something to provide a little motivation to bring it to completion.
A Cherry-Flavored Iambian draws near... what do you do? ...

Offline JoeyBelgier

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 545
  • Rating: +25/-21
  • Joey
    • View Profile
Re: Isometric Engine
« Reply #17 on: August 31, 2009, 04:43:35 pm »
EDIT: no idea what previous post had to do with this
do not consider it spam plz, remember they don't even speak English as native language on my continent x.x
« Last Edit: September 01, 2009, 02:33:27 pm by NecroF-_-ckk »

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Isometric Engine
« Reply #18 on: August 31, 2009, 04:44:32 pm »
well he has to do some shifting, so he could use this instead or something like that, I hadn't really thought it out, but yeah...I was sure he could think of something
/e

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Isometric Engine
« Reply #19 on: August 31, 2009, 04:51:05 pm »

Offline Iambian

  • Coder Of Tomorrow
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 739
  • Rating: +216/-3
  • Cherry Flavoured Nommer of Fishies
    • View Profile
Re: Isometric Engine
« Reply #20 on: August 31, 2009, 05:07:53 pm »
As far as shifting goes, I think what could be done to simulate "smoothscrolling" of sorts would be to have a black border the same width as a "tile" to cut off the work area for the screen when it's updated. The work area, juggled around in a pic file, would contain the stuff used by the boxshift routine to perform said shift. Then again, xLIB has a command a little like that which would be a bit more economical (fullscreen shifts). At least, I *think* it has a command for it. If not, then it certainly is a part of Celtic III as I remember the pains of coding in such a routine.
A Cherry-Flavored Iambian draws near... what do you do? ...

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Isometric Engine
« Reply #21 on: August 31, 2009, 05:58:41 pm »
yes xLib does have a full screen shift, I played around with it for a while, so yeah, that would work
/e

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Isometric Engine
« Reply #22 on: August 31, 2009, 06:03:24 pm »
xLib does have fullscreen shifting, and I can't seem boxshift to do anything :( except give strange errors.  Maybe because it is in production and not finished?

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Isometric Engine
« Reply #23 on: August 31, 2009, 06:06:54 pm »
which version are you using? did you make sure to use 3.09s?
and I haven't tested it myself, so I'll take a look into it, who knows, maybe Iambain made a mistake with it
/e

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: Isometric Engine
« Reply #24 on: August 31, 2009, 06:13:47 pm »
EDIT: Link was fixed

The BOXSHIFT command is nowhere near "fully" implemented. That command still needs to be tested and once I can get the logic down correctly, I'll be finishing up with the rest of the code to bring it to fully implemented status.

Though, I would like to hear about how it *could* be implemented. You know, something to provide a little motivation to bring it to completion.
QFT
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Isometric Engine
« Reply #25 on: August 31, 2009, 06:18:27 pm »
oh right, :P
forgot, well I got the same problems you got Builderboy
so yeah...that might come in the future :P
/e

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Isometric Engine
« Reply #26 on: August 31, 2009, 06:37:10 pm »
well right now I have very good speed using xLibs shiftscreen method, so I doubt i will ever need it :P And i forgot to mention, that this program only displays the status every other shift, so you can actually get twice the framerate if you mix around the code a bit.  (but not twice the speed)

Scrolling left/right, however, is going to be very difficult, because I would have to display 40 sprites for every 1/2 sprite shift :( and this takes about 1 second on my SE.  So it would probably be more practical to just redraw the entire screen under the cover of no buffer update, and shift the screen, like, 2 or 3 spaces.  A total screen redraw takes 1.5 seconds on my SE, which isn't that bad if the screen can be shifted an arbitrary amount right or left. 

Offline necro

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1295
  • Rating: +17/-2
  • +3 vaporal mustache
    • View Profile
Re: Isometric Engine
« Reply #27 on: August 31, 2009, 10:39:41 pm »
That looks awesome.
I'm like a woot burger with awesome fries


VB.Net, C#, C++, Java, Game Maker

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Isometric Engine
« Reply #28 on: September 01, 2009, 07:59:36 pm »
Blarg.

So i was working on how to get an object to display correctly, and if you want the object to be masked, these are the steps

save screen
clear screen
draw object
mask object with above 3 land masks
save pic
clear screen
draw object mask
mask mask with above 3 land masks
save pic
recall landscape
AND mask pic
OR object pic

:( thats huge, and all necessary to display a single object.

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6268
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Isometric Engine
« Reply #29 on: September 01, 2009, 10:13:54 pm »
hmm, do them all at once? so all the objects are done before moving on to the next step?
/e