sukibaby
2eeee03211
Remove timer from text_glow math
...
text_glow is part of DrawPrimitives(), and is used just about everywhere, so it is a huge burden taken off the timer to instead increment a counter.
2024-09-04 20:15:35 -07:00
sukibaby
e60cf2aa0d
Use stdlib for trigonometric functions
...
Profiling showed this performed significantly faster than the RageFast_ implementations.
2024-08-06 16:18:39 -07:00
teejusb
0c1115350d
Allow setting the alpha of the beatbars
2024-03-03 00:08:55 -08:00
tertu marybig
acf8be530d
Allow setting and getting beat bar status per NoteField from Lua
2024-02-15 13:22:26 -08:00
Martin Natano
bacecae1f7
Decouple <vector>
2023-04-21 22:13:41 +02:00
Martin Natano
78fb2e9fc3
Decouple <cstddef>
2023-04-20 11:21:29 +02:00
Martin Natano
093675cdc3
Use attributes where possible
2023-04-20 11:21:29 +02:00
Martin Natano
b68ca517e6
Clean up math functions
...
- Remove checking for standard functions from the build system
- Prefix all invocations with std::
- Replace suffixed functions with unprefixed versions
- Include <cmath> in all files that use it and remove the global include
e.g. floorf(x) -> std::floor(x)
2023-04-19 19:31:40 +02:00
Brian Phlipot
d079940fea
Address PR feedback.
2023-02-02 11:54:17 -08:00
Brian Phlipot
4a6b1a743c
Enable more compiler warnings and treat them as errors.
2023-02-02 11:54:17 -08:00
Michael Sundqvist
0cba3579de
Remove global "using namespace std;" declarations, use "std::" prefixes on all std elements
...
Fix whitespace changes
2022-07-31 22:14:38 +02:00
teejusb
7e3789b131
Integrate C++11 branch into 5_1-new
2019-06-22 12:35:38 -07:00
MrThatKid
eb78d14ab8
Moved display zbuffer clear to after notefields are drawn ( #1679 )
...
* Added display zbuffer clear DrawNoteFieldBoard
* Removed display zbuffer clear in NoteField
2018-04-20 18:27:37 -07:00
MrThatKid
a3eab2e7ab
Added nITG's various column specific & other misc modifiers ( #1468 )
...
* Added stealth control, ZBuffer & DizzyHolds mod
Modifiers added:
StealthPastReceptors
DizzyHolds
StealthType
ZBuffer
* Removed theme metrics that are now mods.
Removed metrics:
DrawHiddenNotesAfterReceptor
DizzyHoldHeads
* Implemented nITG's Shrink modifiers
Modifiers Added:
ShrinkLinear
ShrinkMult
* Implemented nITG's Attenuate mods.
Modifiers added:
AttenuateX
AttenuateY
AttenuateZ
* Implemented nITG's pulse modifiers
Modifiers added:
PulseInner
PulseOuter
PulsePeriod
PulseOffset
* Implemented nITG's DrawSize and Bounce modifiers.
Modifiers Added:
Bounce
BouncePeriod
BounceOffset
BounceZ
BounceZPeriod
BounceZOffset
DrawSize
DrawSizeBack
* Added nITG's column specific Dark & Stealth mods
Modifiers added:
Stealth<1-n>
Dark<1-n>
* Finish adding nITG's column specific mods
Modifiers added:
ConfusionXOffset<1-n>
ConfusionYOffset<1-n>
ConfusionzOffset<1-n>
Reverse<1-n>
Tiny<1-n>
Bumpy<1-n>
* Documented new modififers
* Changelog housekeeping
Fixed a typo and added this branch's PR into the changelog.
* Last bit of clean up. (#3 )
* Fixed up one line of the changelog
* Add MrThatKid to credits.
2017-06-09 21:10:17 -07:00
Colby Klein
b4e02821e8
Revert "Improve handling of errors in lua functions and speed up calls. ( #1427 )"
...
This reverts commit f10e3ae36a .
(it was a joke PR, do not fear)
2017-04-04 17:21:55 -07:00
Kyzentun
f10e3ae36a
Improve handling of errors in lua functions and speed up calls. ( #1427 )
2017-04-04 11:36:23 -07:00
Kyzentun Keeslala
5fca435b43
Clear the z buffer before drawing notes so 3D notes aren't hidden by things in the underlay using masking.
2016-06-21 08:51:09 -06:00
Kyzentun Keeslala
7daaf04cfc
Fixed edit mode attack related crash in routine mode by not checking player options noteskin choice in routine mode.
2016-06-17 16:23:08 -06:00
Jason Felds
bec18a0d36
Fix minor windows pedantic warnings.
2016-03-27 22:03:15 -04:00
Kyzentun Keeslala
86470b7977
Reinstate RageFastSin because it's faster on Windows.
2016-02-07 21:04:10 -07:00
Kyzentun Keeslala
acda44238d
Replace RageFastSin and RageFastCos with standard library versions because the standard library is faster. Use fmod in spline evaluation.
2016-02-07 15:35:05 -07:00
Kyzentun Keeslala
a35fa1416e
Changed DrawBeatBar to check the M-mod so that smaller beat bars are drawn when M-mods are used in edit mode. Updated changelog.
2015-12-04 00:28:22 -07:00
Kyzentun
211269778d
Fixed timing segment text to use the beat of the segment.
2015-05-10 01:04:06 -06:00
Kyzentun
a8f4278a54
Added SetCurrentOptions to NoteField::DrawPrimitives so the correct options are actually set during drawing when there are two players. Fixed stealth by disabling the glow color from the column actor, so glow effects on the column won't work. Added note explaining how long GetBrightness has been disabled.
2015-05-02 18:53:00 -06:00
Kyzentun
2656123464
RageTextureManager now keeps a map of textures by pointer for quicker lookup when deleting.
...
RageTextureManager now keeps a map of textures that need updating, which is none of them because I couldn't find a class that inherits from RageTexture that doesn't have an empty Update function.
ArrowEffects now requires setting the current PlayerOptions before calling any functions. This might make moving to per-column mods easier, and reduces the direct usage of PlayerState.
Tipsy calculations for each column are done in ArrowEffects::Update instead of GetYPos and GetYOffset.
DrawHold changed to only call DrawHoldBody once. DrawHoldBody now does the normal and glow passes together instead of needing to be called twice.
DrawHoldPart changed to take most of its args in a struct.
Giant copy paste mess that NoteField was using to draw timing segment text replaced with a couple functions and a macro.
Selection glow for notefield is only calculated if a section is selected.
Added RageVector3 functions to CubicSplineN for NoteDisplay to use.
Actor effect period is cached now. Sprites and Models cache their animation length now.
ReceptorArrowRow no longer calls ArrowEffects::Update in gameplay.
2015-04-24 15:55:54 -06:00
Kyzentun
b4893e4a10
Structural changes to ScreenGameplay, Player, and NoteField to put the NoteField Board underneath everything except the song background. This includes underneath the combo/judgment when those are under the field. Screen filter in default theme moved to be part of the NoteField board so that it's always in the right place.
2015-04-03 14:19:28 -06:00
Kyzentun
8cde91eb2e
Prevent crashes from an invalid noteskin being set.
2015-01-31 00:23:54 -07:00
Kyzentun
40b25e6220
Fixed conflicts to merge kickbox in.
2015-01-27 18:03:41 -07:00
Kyzentun
d3bbf9cbd3
Added SetVertsFromSplines to AMV. Moved const to the left side. Documentation for all new functions.
2015-01-06 20:14:59 -07:00
Kyzentun
84e758c6c7
Added rotation and zoom splines to note columns, with the help of a couple new classes. Reorganized args to NoteDisplay functions into helper structures. Made splines have 3 modes controlling their behavior. Hold twisting is now handled by an AA rotation and hold drawing in general is now more complex.
2015-01-01 04:36:20 -07:00
Kyzentun
64d384410c
Created NoteColumnRenderer to handle column rendering. Added m_FakeParent to Actor to solve part of the problem.
2014-12-26 01:54:34 -07:00
Kyzentun
07fb61a291
Moved tap and hold rendering logic out of NoteField and into NoteDisplay.
2014-12-25 05:02:28 -07:00
Kyzentun
090d63e43c
Fixed column arg passed to NoteField callbacks.
2014-12-18 02:36:45 -07:00
Kyzentun
4c1ee4bbfb
Fixed problems in NoteField from rebasing.
2014-12-10 18:14:00 -07:00
Kyzentun
3fb36af157
Separate styles for players. Notefields positioned between margins. Edit mode works for kickbox.
2014-12-09 22:27:00 -07:00
Kyzentun
8af06ae505
Added NoteField lua functions to allow the theme to control how the receptors and ghost arrows flash.
2014-11-30 23:17:12 -07:00
Kyzentun
71ed1df5e6
Added FastNoteRendering preference.
2014-08-31 17:17:48 -06:00
sigatrev
82cb4a198d
Enums for TapNoteType, TapNoteSubType, and TapNoteSource
...
I intend to make additional useful information available on judgments,
such as TapNoteType and TapNoteSubType( for hold judgments ).
I am submitting this part as a separate pull request because it is more
generally applicable to anything TapNote related.
2014-08-02 00:38:48 -07:00
sigatrev
0c62e5fb9e
Allow NoteField Board to be an AutoActor
...
NoteField board was already an AutoActor, but code was requiring it to
be a derivative of Sprite. Allow any ActorClass to be used.
NoteField could already be accessed from below, using GetParent() on the
NoteField Board. For ease of allowing the board to be used for player
specific purposes, make notefield an actual child of Player, so the
Board can be accessed per player from the top down.
2014-05-02 17:01:38 -05:00
Devin J. Pohly
bcd90324c7
editor: show scroll segments in song timing
...
They function anyway in gameplay; there's no reason they should be
special-cased out of the editor.
2013-07-18 14:35:53 -04:00
Jason Felds
28e5148dec
The big NULL replacement party part 5.
...
Right. ' = NULL' would get a lot of these.
2013-05-03 23:39:52 -04:00
Jason Felds
ba59dd1656
The big NULL replacement party part 2.
...
This may take a bit. Trying to do this by operator/command.
2013-05-03 23:11:42 -04:00
Jason Felds
9f24627bf9
The big NULL replacement party part 1.
...
This is meant to be a safer alternative since
NULL can often be 0. Let's not rely on that.
And yes, I know this is a lot of files. This is
a safer thing to do in big commits vs for loops.
2013-05-03 23:01:54 -04:00
Jason Felds
c759c4770f
Loop and efficiency boost.
...
No need to loop the structure twice.
2013-05-01 21:41:20 -04:00
Jason Felds
2a7d290419
NoteField is handled.
2013-04-28 17:48:39 -04:00
Jason Felds
6d57d2fbf5
Start working on the other map loops.
2013-04-27 23:50:37 -04:00
Jason Felds
2642ef77e4
Loop and spacing.
2013-04-27 13:51:13 -04:00
Jason Felds
15b99c5b41
Only display decimals as needed.
2013-01-06 21:11:51 -05:00
Devin J. Pohly
bd0e2074ad
replace ASSERT(0) with useful fail messages
2012-12-27 16:59:35 -05:00
Jason Felds
1fc16698ba
War on -Werror, part 12: explicit bool usage.
...
It may save a few cycles, but it's best to be
explicit on boolean operations, especially with
ASSERT.
2012-12-27 11:38:53 -05:00