Skip to content

Commit 2a7dc32

Browse files
committed
Updated README.md
1 parent 3920973 commit 2a7dc32

File tree

2 files changed

+250
-6
lines changed

2 files changed

+250
-6
lines changed

README.md

Lines changed: 125 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,8 @@ _texture2D.Apply();
100100

101101
#### `Common.Lerp`
102102

103+
##### C#
104+
103105
```csharp
104106
using System;
105107
using RhythmGameUtilities;
@@ -109,8 +111,29 @@ var value = Common.Lerp(0, 10, 0.5f);
109111
Console.WriteLine(value); // 5
110112
```
111113

114+
##### C++
115+
116+
```cpp
117+
#include <iostream>
118+
119+
#include "RhythmGameUtilities/Common.hpp"
120+
121+
using namespace RhythmGameUtilities;
122+
123+
int main()
124+
{
125+
auto value = Lerp(0, 10, 0.5f);
126+
127+
std::cout << value << std::endl; // 5
128+
129+
return 0;
130+
}
131+
```
132+
112133
#### `Common.InverseLerp`
113134

135+
##### C#
136+
114137
```csharp
115138
using System;
116139
using RhythmGameUtilities;
@@ -120,6 +143,25 @@ var value = Common.InverseLerp(0, 10, 5);
120143
Console.WriteLine(value); // 0.5
121144
```
122145

146+
##### C++
147+
148+
```cpp
149+
#include <iostream>
150+
151+
#include "RhythmGameUtilities/Common.hpp"
152+
153+
using namespace RhythmGameUtilities;
154+
155+
int main()
156+
{
157+
auto value = InverseLerp(0, 10, 5);
158+
159+
std::cout << value << std::endl; // 0.5
160+
161+
return 0;
162+
}
163+
```
164+
123165
### `Parsers`
124166

125167
Read more about `.chart` files: <https://github.com/TheNathannator/GuitarGame_ChartFormats/blob/main/doc/FileFormats/.chart/Core%20Infrastructure.md>
@@ -260,6 +302,8 @@ if (Utilities.IsOnTheBeat(bpm, currentTime))
260302

261303
#### `Utilities.RoundUpToTheNearestMultiplier`
262304

305+
##### C#
306+
263307
```csharp
264308
using System;
265309
using RhythmGameUtilities;
@@ -269,8 +313,29 @@ var value = Utilities.RoundUpToTheNearestMultiplier(12, 10);
269313
Console.WriteLine(value); // 20
270314
```
271315

316+
##### C++
317+
318+
```cpp
319+
#include <iostream>
320+
321+
#include "RhythmGameUtilities/Utilities.hpp"
322+
323+
using namespace RhythmGameUtilities;
324+
325+
int main()
326+
{
327+
auto value = RoundUpToTheNearestMultiplier(12, 10);
328+
329+
std::cout << value << std::endl; // 20
330+
331+
return 0;
332+
}
333+
```
334+
272335
#### `Utilities.CalculateAccuracyRatio`
273336

337+
##### C#
338+
274339
```csharp
275340
using System;
276341
using RhythmGameUtilities;
@@ -279,9 +344,7 @@ const int seconds = 2;
279344
const int resolution = 192;
280345
const int positionDelta = 50;
281346

282-
var bpmChanges = new Dictionary<int, int> {
283-
{ 0, 120000 }
284-
};
347+
var bpmChanges = new Dictionary<int, int> { { 0, 120000 } };
285348

286349
var note = new Note { Position = 750 };
287350
var currentPosition = Utilities.ConvertSecondsToTicks(seconds, resolution, bpmChanges);
@@ -291,8 +354,40 @@ var value = Utilities.CalculateAccuracyRatio(note.Position, currentPosition, pos
291354
Console.WriteLine(value); // 0.64
292355
```
293356

357+
##### C++
358+
359+
```cpp
360+
#include <iostream>
361+
362+
#include "RhythmGameUtilities/Utilities.hpp"
363+
364+
using namespace RhythmGameUtilities;
365+
366+
int main()
367+
{
368+
const int seconds = 2;
369+
const int resolution = 192;
370+
const int positionDelta = 50;
371+
372+
std::map<int, int> bpmChanges = {{0, 120000}};
373+
374+
auto note = new Note{750};
375+
auto currentPosition =
376+
ConvertSecondsToTicks(seconds, resolution, bpmChanges);
377+
378+
auto value =
379+
CalculateAccuracyRatio(note->Position, currentPosition, positionDelta);
380+
381+
std::cout << value << std::endl; // 0.64
382+
383+
return 0;
384+
}
385+
```
386+
294387
#### `Utilities.CalculateBeatBarsInternal`
295388

389+
##### C#
390+
296391
```csharp
297392
const int resolution = 192;
298393
const int timeSignature = 4;
@@ -313,6 +408,33 @@ var beatBars = Utilities.CalculateBeatBars(bpmChanges, resolution, timeSignature
313408
Console.WriteLine(beatBars.Count); // 440
314409
```
315410

411+
##### C++
412+
413+
```cpp
414+
#include <iostream>
415+
416+
#include "RhythmGameUtilities/Utilities.hpp"
417+
418+
using namespace RhythmGameUtilities;
419+
420+
int main()
421+
{
422+
const int resolution = 192;
423+
const int timeSignature = 4;
424+
425+
std::map<int, int> bpmChanges = {
426+
{0, 88000}, {3840, 112000}, {9984, 89600}, {22272, 112000},
427+
{33792, 111500}, {34560, 112000}, {42240, 111980}};
428+
429+
auto beatBars =
430+
CalculateBeatBars(bpmChanges, resolution, timeSignature, true);
431+
432+
std::cout << size(beatBars) << std::endl; // 440
433+
434+
return 0;
435+
}
436+
```
437+
316438
## Architecture
317439

318440
```mermaid

UnityPackage/README.md

Lines changed: 125 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,8 @@ _texture2D.Apply();
100100

101101
#### `Common.Lerp`
102102

103+
##### C#
104+
103105
```csharp
104106
using System;
105107
using RhythmGameUtilities;
@@ -109,8 +111,29 @@ var value = Common.Lerp(0, 10, 0.5f);
109111
Console.WriteLine(value); // 5
110112
```
111113

114+
##### C++
115+
116+
```cpp
117+
#include <iostream>
118+
119+
#include "RhythmGameUtilities/Common.hpp"
120+
121+
using namespace RhythmGameUtilities;
122+
123+
int main()
124+
{
125+
auto value = Lerp(0, 10, 0.5f);
126+
127+
std::cout << value << std::endl; // 5
128+
129+
return 0;
130+
}
131+
```
132+
112133
#### `Common.InverseLerp`
113134

135+
##### C#
136+
114137
```csharp
115138
using System;
116139
using RhythmGameUtilities;
@@ -120,6 +143,25 @@ var value = Common.InverseLerp(0, 10, 5);
120143
Console.WriteLine(value); // 0.5
121144
```
122145

146+
##### C++
147+
148+
```cpp
149+
#include <iostream>
150+
151+
#include "RhythmGameUtilities/Common.hpp"
152+
153+
using namespace RhythmGameUtilities;
154+
155+
int main()
156+
{
157+
auto value = InverseLerp(0, 10, 5);
158+
159+
std::cout << value << std::endl; // 0.5
160+
161+
return 0;
162+
}
163+
```
164+
123165
### `Parsers`
124166

125167
Read more about `.chart` files: <https://github.com/TheNathannator/GuitarGame_ChartFormats/blob/main/doc/FileFormats/.chart/Core%20Infrastructure.md>
@@ -260,6 +302,8 @@ if (Utilities.IsOnTheBeat(bpm, currentTime))
260302

261303
#### `Utilities.RoundUpToTheNearestMultiplier`
262304

305+
##### C#
306+
263307
```csharp
264308
using System;
265309
using RhythmGameUtilities;
@@ -269,8 +313,29 @@ var value = Utilities.RoundUpToTheNearestMultiplier(12, 10);
269313
Console.WriteLine(value); // 20
270314
```
271315

316+
##### C++
317+
318+
```cpp
319+
#include <iostream>
320+
321+
#include "RhythmGameUtilities/Utilities.hpp"
322+
323+
using namespace RhythmGameUtilities;
324+
325+
int main()
326+
{
327+
auto value = RoundUpToTheNearestMultiplier(12, 10);
328+
329+
std::cout << value << std::endl; // 20
330+
331+
return 0;
332+
}
333+
```
334+
272335
#### `Utilities.CalculateAccuracyRatio`
273336

337+
##### C#
338+
274339
```csharp
275340
using System;
276341
using RhythmGameUtilities;
@@ -279,9 +344,7 @@ const int seconds = 2;
279344
const int resolution = 192;
280345
const int positionDelta = 50;
281346

282-
var bpmChanges = new Dictionary<int, int> {
283-
{ 0, 120000 }
284-
};
347+
var bpmChanges = new Dictionary<int, int> { { 0, 120000 } };
285348

286349
var note = new Note { Position = 750 };
287350
var currentPosition = Utilities.ConvertSecondsToTicks(seconds, resolution, bpmChanges);
@@ -291,8 +354,40 @@ var value = Utilities.CalculateAccuracyRatio(note.Position, currentPosition, pos
291354
Console.WriteLine(value); // 0.64
292355
```
293356

357+
##### C++
358+
359+
```cpp
360+
#include <iostream>
361+
362+
#include "RhythmGameUtilities/Utilities.hpp"
363+
364+
using namespace RhythmGameUtilities;
365+
366+
int main()
367+
{
368+
const int seconds = 2;
369+
const int resolution = 192;
370+
const int positionDelta = 50;
371+
372+
std::map<int, int> bpmChanges = {{0, 120000}};
373+
374+
auto note = new Note{750};
375+
auto currentPosition =
376+
ConvertSecondsToTicks(seconds, resolution, bpmChanges);
377+
378+
auto value =
379+
CalculateAccuracyRatio(note->Position, currentPosition, positionDelta);
380+
381+
std::cout << value << std::endl; // 0.64
382+
383+
return 0;
384+
}
385+
```
386+
294387
#### `Utilities.CalculateBeatBarsInternal`
295388

389+
##### C#
390+
296391
```csharp
297392
const int resolution = 192;
298393
const int timeSignature = 4;
@@ -313,6 +408,33 @@ var beatBars = Utilities.CalculateBeatBars(bpmChanges, resolution, timeSignature
313408
Console.WriteLine(beatBars.Count); // 440
314409
```
315410

411+
##### C++
412+
413+
```cpp
414+
#include <iostream>
415+
416+
#include "RhythmGameUtilities/Utilities.hpp"
417+
418+
using namespace RhythmGameUtilities;
419+
420+
int main()
421+
{
422+
const int resolution = 192;
423+
const int timeSignature = 4;
424+
425+
std::map<int, int> bpmChanges = {
426+
{0, 88000}, {3840, 112000}, {9984, 89600}, {22272, 112000},
427+
{33792, 111500}, {34560, 112000}, {42240, 111980}};
428+
429+
auto beatBars =
430+
CalculateBeatBars(bpmChanges, resolution, timeSignature, true);
431+
432+
std::cout << size(beatBars) << std::endl; // 440
433+
434+
return 0;
435+
}
436+
```
437+
316438
## Architecture
317439

318440
```mermaid

0 commit comments

Comments
 (0)