Page 2 of 2

Re: Fracturetrix Game Announcement Video

Posted: Tue Sep 09, 2025 12:54 am
by Carm3D
IceSoft wrote: Mon Sep 08, 2025 1:13 pm which part is using PureBasic?
Are you using using an Lightwave3D PB wrapper?
Oh no no... It's all PureBasic running the show. Lightwave rendered the image/animation content PureBasic is using.

Re: Fracturetrix Game Announcement Video

Posted: Tue Sep 09, 2025 7:46 pm
by MikeHart
It takes one freakin minute till you reach the menu. Way to long. No game play is shown. How is this surpose to make me want to see more of the game? It is a promotion video for a flashy menu. Even for this it is way to long.

Re: Fracturetrix Game Announcement Video

Posted: Tue Sep 09, 2025 10:14 pm
by Carm3D
(See next post)

Re: Fracturetrix Game Announcement Video

Posted: Wed Sep 10, 2025 12:24 am
by Carm3D
MikeHart wrote: Tue Sep 09, 2025 7:46 pm It takes one freakin minute till you reach the menu. Way to long. No game play is shown. How is this surpose to make me want to see more of the game? It is a promotion video for a flashy menu. Even for this it is way to long.
Here you go. https://youtu.be/eabCYXbcJ0A (Unlisted) Press escape at the logo or intro, and double press your menu selection to skip the flashy stuff.

Re: Fracturetrix Game Announcement Video

Posted: Thu Sep 11, 2025 12:28 pm
by Carm3D
My fancy schmancy smooth scrolling system.

Code: Select all

Structure ScrollData
    Active.a
    PosF.f
    Pos.w
    Goal.w
    Adjust.f
    AdjustOld.f
    ChangeLimit.f
EndStructure

Global ScrollProc.ScrollData
Global ScrollY.ScrollData

Procedure ScrollProcNewGoal()
    ScrollProc\Active = 1
    ScrollProc\PosF = ScrollProc\Pos
    ScrollProc\ChangeLimit = 0.0
EndProcedure

Procedure Scroll_Process()
    ScrollProc\Adjust = (ScrollProc\PosF - ScrollProc\Goal) * (0.007 * TimeDelta)
    ScrollProc\ChangeLimit + (0.002 * TimeDelta)
    If ScrollProc\ChangeLimit > 1.0 : ScrollProc\ChangeLimit = 1.0 : EndIf
    ScrollProc\Adjust = ScrollProc\AdjustOld * (1.0 - ScrollProc\ChangeLimit) + ScrollProc\Adjust * ScrollProc\ChangeLimit
    ScrollProc\PosF - ScrollProc\Adjust
    ScrollProc\AdjustOld = ScrollProc\Adjust
    ScrollProc\Pos = ScrollProc\PosF
    If ScrollProc\PosF - ScrollProc\Goal > -0.3 And ScrollProc\PosF - ScrollProc\Goal < 0.3
        ScrollProc\Active = 0
        ScrollProc\Adjust = 0.0
        ScrollProc\AdjustOld = 0.0
    EndIf
EndProcedure

; Set up before entering screen:
    ScrollY\Pos = 150
    ScrollY\PosF = 150.0
    ScrollY\Active = 0
    ScrollProc\Adjust = 0.0
    ScrollProc\AdjustOld = 0.0

; And assign a new goal like so:
ScrollY\Goal = Y_Goal_Value_You_Want
ScrollProc = ScrollY
ScrollProcNewGoal()
ScrollY = ScrollProc
TimeDelta is the ElapsedMillisecond difference from each frame.. This allows the effect to stay constant if the frame rate changes.

Results: https://youtu.be/zT71pif0VtA (unlisted)

Re: Fracturetrix Game Announcement Video

Posted: Thu Sep 11, 2025 5:31 pm
by idle
scroll looks smooth and I like the fractures, smoke and falling fragments effects.
how have you done that, if you don't mind me asking?

Re: Fracturetrix Game Announcement Video

Posted: Thu Sep 11, 2025 5:42 pm
by Carm3D
idle wrote: Thu Sep 11, 2025 5:31 pmscroll looks smooth and I like the fractures, smoke and falling fragments effects.
how have you done that, if you don't mind me asking?
Thanks! The smoke was made of two small puffs of smoke generated in Storm and rendered in Lightwave. I assembled them into sprite sheets.. Then my code generated a cluster of them playing at slightly different speeds and with rotation. The fragments were also animation from Lightwave.

Code: Select all

(0.007 * TimeDelta)
Alter this number to make the scrolling faster or slower.

If you have other questions let me know. Thanks!

Re: Fracturetrix Game Announcement Video

Posted: Thu Sep 11, 2025 6:23 pm
by idle
Carm3D wrote: Thu Sep 11, 2025 5:42 pm
idle wrote: Thu Sep 11, 2025 5:31 pmscroll looks smooth and I like the fractures, smoke and falling fragments effects.
how have you done that, if you don't mind me asking?
Thanks! The smoke was made of two small puffs of smoke generated in Storm and rendered in Lightwave. I assembled them into sprite sheets.. Then my code generated a cluster of them playing at slightly different speeds and with rotation. The fragments were also animation from Lightwave.

Code: Select all

(0.007 * TimeDelta)
Alter this number to make the scrolling faster or slower.

If you have other questions let me know. Thanks!
It's fairly complex to do in code and I can't really notice that it's been rendered to sprite sheets, well done!

Re: Fracturetrix Game Announcement Video

Posted: Fri Sep 12, 2025 1:52 am
by Carm3D
idle wrote: Thu Sep 11, 2025 6:23 pm It's fairly complex to do in code and I can't really notice that it's been rendered to sprite sheets, well done!
Well the key is using Structures. If you don't know how structures work, dig into them. Otherwise trying to do effects like this is ridiculously complicated. Again, ask me if you have more questions.

Re: Fracturetrix Game Announcement Video

Posted: Fri Sep 12, 2025 4:28 am
by Carm3D
Modification to my smooth scrolling routine.. Adding ChangeLimitAdd makes it even more buttery smooth.

Code: Select all

Structure ScrollData
	Active.a
	PosF.f
	Pos.w
	Goal.w
	Adjust.f
	AdjustOld.f
	ChangeLimit.f
	ChLimitAdd.f
EndStructure

Procedure ScrollProcNewGoal()
	ScrollProc\Active = 1
	ScrollProc\PosF = ScrollProc\Pos
	ScrollProc\ChangeLimit = 0.0
	ScrollProc\ChLimitAdd = 0.0005
EndProcedure

Procedure Scroll_Process()
	ScrollProc\Adjust = (ScrollProc\PosF - ScrollProc\Goal) * (0.006 * TimeDelta)
	ScrollProc\ChangeLimit + (ScrollProc\ChLimitAdd * TimeDelta)
	ScrollProc\ChLimitAdd + 0.0004
	If ScrollProc\ChangeLimit > 1.0 : ScrollProc\ChangeLimit = 1.0 : EndIf
	ScrollProc\Adjust = ScrollProc\AdjustOld * (1.0 - ScrollProc\ChangeLimit) + ScrollProc\Adjust * ScrollProc\ChangeLimit
	ScrollProc\PosF - ScrollProc\Adjust
	ScrollProc\AdjustOld = ScrollProc\Adjust
	ScrollProc\Pos = ScrollProc\PosF
	If ScrollProc\PosF - ScrollProc\Goal > -0.3 And ScrollProc\PosF - ScrollProc\Goal < 0.3
		ScrollProc\Active = 0
		ScrollProc\Adjust = 0.0
		ScrollProc\AdjustOld = 0.0
	EndIf
EndProcedure

Re: Fracturetrix Game Announcement Video

Posted: Fri Sep 12, 2025 4:30 am
by idle
Carm3D wrote: Fri Sep 12, 2025 1:52 am
idle wrote: Thu Sep 11, 2025 6:23 pm It's fairly complex to do in code and I can't really notice that it's been rendered to sprite sheets, well done!
Well the key is using Structures. If you don't know how structures work, dig into them. Otherwise trying to do effects like this is ridiculously complicated. Again, ask me if you have more questions.
The key was using lightwave more like. The 2D engine doesn't do physics, texture mapping, particle systems or integration for that matter.
I think I know about structures, I've been coding since 1977 :lol:

Re: Fracturetrix Game Announcement Video

Posted: Fri Sep 12, 2025 4:32 am
by Carm3D
idle wrote: Fri Sep 12, 2025 4:30 amThe key was using lightwave more like. The 2D engine doesn't do physics, texture mapping, particle systems or integration for that matter.
I think I know about structures, I've been coding since 1977 :lol:
Lightwave and Storm yes... They put a nice polish on it. 8)

Re: Fracturetrix Game Announcement Video

Posted: Sat Sep 13, 2025 3:23 am
by Carm3D
MikeHart wrote: Tue Sep 09, 2025 7:46 pm It takes one freakin minute till you reach the menu. Way to long. No game play is shown. How is this surpose to make me want to see more of the game? It is a promotion video for a flashy menu. Even for this it is way to long.
I've heavily optimized the loading systems for the main menu for getting into the action even quicker. 8) Read the (unlisted) video description for details:
https://youtu.be/nKvDGOdr6KE