@jjlmoya/utils-games-development 1.53.0 → 1.55.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/category/index.ts +2 -1
- package/src/entries.ts +6 -1
- package/src/index.ts +2 -0
- package/src/tests/contrast_legibility.test.ts +245 -0
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/tool_validation.test.ts +2 -2
- package/src/tool/itchioGameTester/itchio-game-tester.css +3 -3
- package/src/tool/localizationSanitizer/localization-sanitizer.css +13 -13
- package/src/tool/retroSfxGenerator/bibliography.astro +6 -0
- package/src/tool/retroSfxGenerator/bibliography.ts +16 -0
- package/src/tool/retroSfxGenerator/client.ts +256 -0
- package/src/tool/retroSfxGenerator/component.astro +146 -0
- package/src/tool/retroSfxGenerator/entry.ts +27 -0
- package/src/tool/retroSfxGenerator/i18n/de.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/en.ts +224 -0
- package/src/tool/retroSfxGenerator/i18n/es.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/fr.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/id.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/it.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/ja.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/ko.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/nl.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/pl.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/pt.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/ru.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/sv.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/tr.ts +211 -0
- package/src/tool/retroSfxGenerator/i18n/zh.ts +211 -0
- package/src/tool/retroSfxGenerator/index.ts +11 -0
- package/src/tool/retroSfxGenerator/logic.test.ts +40 -0
- package/src/tool/retroSfxGenerator/logic.ts +214 -0
- package/src/tool/retroSfxGenerator/retro-sfx-generator.css +429 -0
- package/src/tool/retroSfxGenerator/seo.astro +15 -0
- package/src/tool/retroSfxGenerator/ui.ts +41 -0
- package/src/tool/saveFileEditor/game-save-file-editor.css +5 -5
- package/src/tool/spriteSheetPacker/sprite-sheet-packer.css +5 -5
- package/src/tool/steamBbcodeTranslator/app-client.ts +125 -0
- package/src/tool/steamBbcodeTranslator/bbcode-parser.ts +110 -0
- package/src/tool/steamBbcodeTranslator/bibliography.astro +6 -0
- package/src/tool/steamBbcodeTranslator/bibliography.ts +14 -0
- package/src/tool/steamBbcodeTranslator/component.astro +83 -0
- package/src/tool/steamBbcodeTranslator/entry.ts +28 -0
- package/src/tool/steamBbcodeTranslator/html-parser.ts +42 -0
- package/src/tool/steamBbcodeTranslator/html-renderer.ts +71 -0
- package/src/tool/steamBbcodeTranslator/i18n/de.ts +207 -0
- package/src/tool/steamBbcodeTranslator/i18n/en.ts +236 -0
- package/src/tool/steamBbcodeTranslator/i18n/es.ts +207 -0
- package/src/tool/steamBbcodeTranslator/i18n/fr.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/id.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/it.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/ja.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/ko.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/nl.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/pl.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/pt.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/ru.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/sv.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/tr.ts +195 -0
- package/src/tool/steamBbcodeTranslator/i18n/zh.ts +195 -0
- package/src/tool/steamBbcodeTranslator/index.ts +12 -0
- package/src/tool/steamBbcodeTranslator/logic.test.ts +41 -0
- package/src/tool/steamBbcodeTranslator/logic.ts +96 -0
- package/src/tool/steamBbcodeTranslator/markdown-parser.ts +115 -0
- package/src/tool/steamBbcodeTranslator/markdown-renderer.ts +85 -0
- package/src/tool/steamBbcodeTranslator/seo.astro +15 -0
- package/src/tool/steamBbcodeTranslator/steam-bbcode-translator.css +392 -0
- package/src/tool/steamBbcodeTranslator/storage.ts +30 -0
- package/src/tool/steamBbcodeTranslator/types.ts +36 -0
- package/src/tool/steamBbcodeTranslator/ui.ts +18 -0
- package/src/tool/steamCapsuleGenerator/steam-capsule-generator.css +6 -6
- package/src/tools.ts +4 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { RetroSfxGeneratorUI } from '../ui';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
|
|
5
|
+
export const content: ToolLocaleContent<RetroSfxGeneratorUI> = {
|
|
6
|
+
slug: 'retro-sfx-generator',
|
|
7
|
+
title: '게임용 레트로 사운드 효과 생성기',
|
|
8
|
+
description: '브라우저에서 즉시 프리셋, 파형 제어, 라이브 오실로스코프 및 원클릭 WAV 내보내기를 통해 레트로 게임 사운드 효과를 생성하세요.',
|
|
9
|
+
ui: {
|
|
10
|
+
waveformLabel: '파형',
|
|
11
|
+
waveformSquare: '사각패턴',
|
|
12
|
+
waveformSawtooth: '톱니패턴',
|
|
13
|
+
waveformSine: '사인파',
|
|
14
|
+
waveformTriangle: '삼각파',
|
|
15
|
+
waveformNoise: '노이즈',
|
|
16
|
+
presetLabel: '빠른 사운드 뱅크',
|
|
17
|
+
presetExplosion: '폭발',
|
|
18
|
+
presetLaser: '레이저',
|
|
19
|
+
presetJump: '점프',
|
|
20
|
+
presetCoin: '동전',
|
|
21
|
+
presetPowerUp: '파워업',
|
|
22
|
+
frequencyLabel: '시작 주파수',
|
|
23
|
+
frequencyEndLabel: '끝 주파수',
|
|
24
|
+
durationLabel: '길이',
|
|
25
|
+
decayLabel: '감쇠',
|
|
26
|
+
sweepLabel: '피치 스윕',
|
|
27
|
+
vibratoLabel: '비브라토',
|
|
28
|
+
lowpassLabel: '로우패스',
|
|
29
|
+
highpassLabel: '하이패스',
|
|
30
|
+
noiseMixLabel: '노이즈 혼합',
|
|
31
|
+
toneSection: '톤',
|
|
32
|
+
dynamicsSection: '다이내믹스',
|
|
33
|
+
filterSection: '질감',
|
|
34
|
+
playButton: '사운드 재생',
|
|
35
|
+
stopButton: '정지',
|
|
36
|
+
downloadButton: 'WAV 다운로드',
|
|
37
|
+
randomizeButton: '무작위 생성',
|
|
38
|
+
resetButton: '초기화',
|
|
39
|
+
waveformPreviewLabel: '실시간 파형',
|
|
40
|
+
generatedLabel: '생성됨',
|
|
41
|
+
statusReady: '청취 준비 완료',
|
|
42
|
+
statusPlaying: '브라우저에서 재생 중',
|
|
43
|
+
statusStopped: '재생 정지됨',
|
|
44
|
+
statusDownloaded: 'WAV 다운로드 완료',
|
|
45
|
+
statusAudioBlocked: '재생을 위해 오디오 권한이 필요합니다',
|
|
46
|
+
statusGenerating: '사운드 렌더링 중',
|
|
47
|
+
presetHint: '시작 지점을 선택한 후 아래 컨트롤로 신호를 조정하세요.',
|
|
48
|
+
monoWavHint: '44.1 kHz · 16-bit 모노 WAV',
|
|
49
|
+
},
|
|
50
|
+
seo: [
|
|
51
|
+
{
|
|
52
|
+
type: 'title',
|
|
53
|
+
level: 2,
|
|
54
|
+
text: '게임 잼 동안 브라우저를 떠나지 않고 사운드 제작',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: 'paragraph',
|
|
58
|
+
html: '좋은 게임 효과음은 피드백을 전달해야 합니다. 상승하는 피치는 점프나 파워업, 빠른 하강 피치는 레이저나 공격, 노이즈가 섞인 감쇠음은 폭발 효과음을 연상시킵니다. 이 생성기는 브라우저 오디오 웹 API를 통해 레트로 사운드를 쉽게 생성합니다.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: 'stats',
|
|
62
|
+
columns: 4,
|
|
63
|
+
items: [
|
|
64
|
+
{ label: '사운드 프리셋', value: '5가지 기본 패턴' },
|
|
65
|
+
{ label: '오실레이터 선택', value: '5가지 파형 형태' },
|
|
66
|
+
{ label: '내보내기 형식', value: '16-bit PCM WAV' },
|
|
67
|
+
{ label: '처리 방식', value: '브라우저 로컬 처리' },
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
level: 2,
|
|
73
|
+
text: '각 조절 항목의 기능',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'comparative',
|
|
77
|
+
columns: 2,
|
|
78
|
+
items: [
|
|
79
|
+
{
|
|
80
|
+
title: '피치와 변화',
|
|
81
|
+
description: '톤 컨트롤은 사운드의 기본 정체성을 설정합니다.',
|
|
82
|
+
points: [
|
|
83
|
+
'시작 주파수는 오실레이터의 기본 음고를 정합니다',
|
|
84
|
+
'피치 스윕은 끝 주파수로 음고를 변화시킵니다',
|
|
85
|
+
'비브라토는 주기적인 음고 떨림을 추가합니다',
|
|
86
|
+
'다양한 파형 형태가 서로 다른 고주파 질감을 형성합니다',
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
title: '형태와 질감',
|
|
91
|
+
description: '다이내믹스와 필터는 사운드의 잔향과 질감을 조정합니다.',
|
|
92
|
+
points: [
|
|
93
|
+
'길이는 전체 효과음의 재생 시간을 정합니다',
|
|
94
|
+
'감쇠는 음량이 줄어드는 속도를 조절합니다',
|
|
95
|
+
'로우패스 필터는 날카로운 고주파를 부드럽게 만듭니다',
|
|
96
|
+
'하이패스 필터는 저주파를 제거하고 노이즈를 섞어 거친 질감을 줍니다',
|
|
97
|
+
],
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
type: 'title',
|
|
103
|
+
level: 2,
|
|
104
|
+
text: '대표적인 게임 이벤트 설정 팁',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
type: 'table',
|
|
108
|
+
headers: ['이벤트', '유용한 시작 프리셋', '첫 번째 추천 조절 항목'],
|
|
109
|
+
rows: [
|
|
110
|
+
['폭발', '낮은 주파수의 노이즈', '길이를 늘리고 로우패스 필터를 낮추어 웅장함 추가'],
|
|
111
|
+
['레이저', '하강 스윕의 톱니파', '길이를 줄이고 하이패스 필터를 높여 날카롭게 설정'],
|
|
112
|
+
['점프', '상승 스윕의 사각파', '감쇠를 줄여 상승 피치가 명확히 들리도록 설정'],
|
|
113
|
+
['동전', '짧은 상승 스윕의 사각파', '시작 주파수를 높여 맑고 밝은 획득음 연출'],
|
|
114
|
+
['파워업', '긴 상승 스윕의 삼각파', '비브라토를 약간 추가하여 생동감 부여'],
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
level: 2,
|
|
120
|
+
text: '프로토타입 내보내기에 WAV가 적합한 이유',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: 'WAV는 별도의 압축 해제 라이브러리 없이 대부분의 게임 엔진에서 곧바로 사용할 수 있는 표준 포맷입니다.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'tip',
|
|
128
|
+
title: '실제 게임 볼륨에서 청취 테스트',
|
|
129
|
+
html: '단독으로 들었을 때 좋은 소리라도 게임 내에서 자주 반복되면 피로감을 줄 수 있습니다. 게임 환경에서 BGM과 함께 테스트하세요.',
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
faqTitle: '자주 묻는 질문',
|
|
133
|
+
faq: [
|
|
134
|
+
{
|
|
135
|
+
question: '생성된 사운드가 서버로 업로드되나요?',
|
|
136
|
+
answer: '아니요. 모든 오디오 합성 및 WAV 인코딩은 브라우저 내에서 처리됩니다.',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
question: '다운로드한 사운드를 실제 게임 프로젝트에 사용할 수 있나요?',
|
|
140
|
+
answer: '네. 게임 잼 프로젝트, 프로토타입 및 인디 게임 개발에 사용할 수 있습니다.',
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
question: '피치 스윕은 어떻게 작동하나요?',
|
|
144
|
+
answer: '양수 값은 상승 피치, 음수 값은 하강 피치로 계산되어 시작 주파수 대비 비례적으로 변경됩니다.',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
question: '소리가 나지 않을 때는 어떻게 하나요?',
|
|
148
|
+
answer: '브라우저 탭의 오디오 재생 권한을 확인한 뒤 사운드 재생 버튼을 다시 누르세요.',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
howTo: [
|
|
152
|
+
{
|
|
153
|
+
name: '사운드 프리셋 선택',
|
|
154
|
+
text: '폭발, 레이저, 점프, 동전, 파워업 중 하나를 선택하세요.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
name: '파라미터 조절',
|
|
158
|
+
text: '파형, 피치, 길이, 감쇠 및 필터를 원하는 값으로 조절하세요.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
name: '사운드 청취',
|
|
162
|
+
text: '사운드 재생 버튼을 눌러 실시간으로 확인하세요.',
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
name: 'WAV 다운로드',
|
|
166
|
+
text: 'WAV 다운로드 버튼을 눌러 파일을 저장하세요.',
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
schemas: [
|
|
170
|
+
{
|
|
171
|
+
'@context': 'https://schema.org',
|
|
172
|
+
'@type': 'SoftwareApplication',
|
|
173
|
+
name: '게임용 레트로 사운드 효과 생성기',
|
|
174
|
+
applicationCategory: 'MultimediaApplication',
|
|
175
|
+
operatingSystem: 'Any',
|
|
176
|
+
offers: {
|
|
177
|
+
'@type': 'Offer',
|
|
178
|
+
price: '0',
|
|
179
|
+
priceCurrency: 'KRW',
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
'@context': 'https://schema.org',
|
|
184
|
+
'@type': 'FAQPage',
|
|
185
|
+
mainEntity: [
|
|
186
|
+
{
|
|
187
|
+
'@type': 'Question',
|
|
188
|
+
name: '생성된 사운드가 서버로 업로드되나요?',
|
|
189
|
+
acceptedAnswer: {
|
|
190
|
+
'@type': 'Answer',
|
|
191
|
+
text: '아니요. 모든 오디오 합성 및 WAV 인코딩은 브라우저 내에서 처리됩니다.',
|
|
192
|
+
},
|
|
193
|
+
},
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
'@context': 'https://schema.org',
|
|
198
|
+
'@type': 'HowTo',
|
|
199
|
+
name: '레트로 게임 사운드 효과 생성 방법',
|
|
200
|
+
step: [
|
|
201
|
+
{
|
|
202
|
+
'@type': 'HowToStep',
|
|
203
|
+
name: '사운드 프리셋 선택',
|
|
204
|
+
text: '원하는 프리셋을 선택하세요.',
|
|
205
|
+
},
|
|
206
|
+
],
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
bibliographyTitle: '참고자료',
|
|
210
|
+
bibliography: bibliographyEntries,
|
|
211
|
+
};
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { RetroSfxGeneratorUI } from '../ui';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
|
|
5
|
+
export const content: ToolLocaleContent<RetroSfxGeneratorUI> = {
|
|
6
|
+
slug: 'retro-geluidseffect-generator-games',
|
|
7
|
+
title: 'Retro Geluidseffect Generator voor Games',
|
|
8
|
+
description: 'Maak korte retro game geluidseffecten in je browser met presets, golfvormbediening, een live oscilloscoop en WAV-export.',
|
|
9
|
+
ui: {
|
|
10
|
+
waveformLabel: 'Golfvorm',
|
|
11
|
+
waveformSquare: 'Vierkant',
|
|
12
|
+
waveformSawtooth: 'Zaagtand',
|
|
13
|
+
waveformSine: 'Sinus',
|
|
14
|
+
waveformTriangle: 'Driehoek',
|
|
15
|
+
waveformNoise: 'Ruis',
|
|
16
|
+
presetLabel: 'Snelle geluidsbank',
|
|
17
|
+
presetExplosion: 'Explosie',
|
|
18
|
+
presetLaser: 'Laser',
|
|
19
|
+
presetJump: 'Sprong',
|
|
20
|
+
presetCoin: 'Munt',
|
|
21
|
+
presetPowerUp: 'Power-up',
|
|
22
|
+
frequencyLabel: 'Startfrequentie',
|
|
23
|
+
frequencyEndLabel: 'Eindfrequentie',
|
|
24
|
+
durationLabel: 'Lengte',
|
|
25
|
+
decayLabel: 'Uitsterven',
|
|
26
|
+
sweepLabel: 'Toonhoogte sweep',
|
|
27
|
+
vibratoLabel: 'Vibrato',
|
|
28
|
+
lowpassLabel: 'Laagdoorlaat',
|
|
29
|
+
highpassLabel: 'Hoogdoorlaat',
|
|
30
|
+
noiseMixLabel: 'Ruis mix',
|
|
31
|
+
toneSection: 'Toon',
|
|
32
|
+
dynamicsSection: 'Dynamiek',
|
|
33
|
+
filterSection: 'Textuur',
|
|
34
|
+
playButton: 'Geluid afspelen',
|
|
35
|
+
stopButton: 'Stoppen',
|
|
36
|
+
downloadButton: 'Download WAV',
|
|
37
|
+
randomizeButton: 'Willekeurig',
|
|
38
|
+
resetButton: 'Resetten',
|
|
39
|
+
waveformPreviewLabel: 'Live golfvorm',
|
|
40
|
+
generatedLabel: 'Gegenereerd',
|
|
41
|
+
statusReady: 'Klaar om te beluisteren',
|
|
42
|
+
statusPlaying: 'Speelt af in je browser',
|
|
43
|
+
statusStopped: 'Afspelen gestopt',
|
|
44
|
+
statusDownloaded: 'WAV gedownload',
|
|
45
|
+
statusAudioBlocked: 'Afspelen vereist audio-toestemming in het browsertabblad',
|
|
46
|
+
statusGenerating: 'Geluid wordt gerenderd',
|
|
47
|
+
presetHint: 'Kies een startpunt en pas het signaal aan met de regelaars.',
|
|
48
|
+
monoWavHint: '44.1 kHz · 16-bit mono WAV',
|
|
49
|
+
},
|
|
50
|
+
seo: [
|
|
51
|
+
{
|
|
52
|
+
type: 'title',
|
|
53
|
+
level: 2,
|
|
54
|
+
text: 'Maak game audio tijdens een jam rechtstreeks in je browser',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: 'paragraph',
|
|
58
|
+
html: 'Een goed game geluidseffect moet direct een actie communiceren. Een stijgende toonhoogte voelt als een sprong, een snelle daling als een laser en een ruisgeluid als een explosie. Deze generator maakt het eenvoudig om deze patronen aan te passen.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: 'stats',
|
|
62
|
+
columns: 4,
|
|
63
|
+
items: [
|
|
64
|
+
{ label: 'Geluids-presets', value: '5 startpatronen' },
|
|
65
|
+
{ label: 'Oscillator keuzes', value: '5 golfvormen' },
|
|
66
|
+
{ label: 'Exportformaat', value: '16-bit PCM WAV' },
|
|
67
|
+
{ label: 'Verwerking', value: 'In de browser' },
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
level: 2,
|
|
73
|
+
text: 'Wat de regelaars veranderen',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'comparative',
|
|
77
|
+
columns: 2,
|
|
78
|
+
items: [
|
|
79
|
+
{
|
|
80
|
+
title: 'Toonhoogte en beweging',
|
|
81
|
+
description: 'De toonregelaars bepalen de identiteit van het geluid.',
|
|
82
|
+
points: [
|
|
83
|
+
'Startfrequentie bepaalt de begintoon',
|
|
84
|
+
'Sweep verandert de frequentie naar het eindpunt',
|
|
85
|
+
'Vibrato voegt een lichte trilling toe',
|
|
86
|
+
'Verschillende golfvormen maken unieke klankkleuren',
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
title: 'Vorm en textuur',
|
|
91
|
+
description: 'Dynamiek en filters bepalen hoe het geluid uitklinkt.',
|
|
92
|
+
points: [
|
|
93
|
+
'Lengte bepaalt de totale tijdsduur',
|
|
94
|
+
'Decay regelt hoe snel het volume afneemt',
|
|
95
|
+
'Laagdoorlaatfilter maakt scherpe tonen zachter',
|
|
96
|
+
'Hoogdoorlaatfilter verwijdert lage tonen',
|
|
97
|
+
],
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
type: 'title',
|
|
103
|
+
level: 2,
|
|
104
|
+
text: 'Praktische recepten voor game-events',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
type: 'table',
|
|
108
|
+
headers: ['Event', 'Handige startpreset', 'Eerste aanpassing om te proberen'],
|
|
109
|
+
rows: [
|
|
110
|
+
['Explosie', 'Ruis met lage frequentie', 'Verleng de duur en verlaag de laagdoorlaat voor meer impact'],
|
|
111
|
+
['Laser', 'Zaagtand met dalende sweep', 'Verkort de duur en verhoog de hoogdoorlaat'],
|
|
112
|
+
['Sprong', 'Vierkant met stijgende sweep', 'Verminder decay om de stijging duidelijk te horen'],
|
|
113
|
+
['Munt', 'Vierkant met korte stijgende sweep', 'Verhoog startfrequentie voor een helder geluid'],
|
|
114
|
+
['Power-up', 'Driehoek met lange stijgende sweep', 'Voeg vibrato toe voor meer dynamiek'],
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
level: 2,
|
|
120
|
+
text: 'Waarom WAV ideaal is voor prototypes',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: 'WAV is een universeel formaat dat zonder extra bibliotheken direct kan worden geimporteerd in game engines.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'tip',
|
|
128
|
+
title: 'Luister op het gewenste spelvolume',
|
|
129
|
+
html: 'Test het gedownloade WAV-bestand direct in je game om te kijken of het past bij de achtergrondmuziek.',
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
faqTitle: 'Veelgestelde Vragen',
|
|
133
|
+
faq: [
|
|
134
|
+
{
|
|
135
|
+
question: 'Worden mijn geluiden geupload naar een server?',
|
|
136
|
+
answer: 'Nee. Alle synthese en WAV-codering vinden plaats in je browser.',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
question: 'Kan ik de geluiden gebruiken in mijn commerciele game?',
|
|
140
|
+
answer: 'Ja, de gegeneerde geluiden zijn vrij te gebruiken in je projecten.',
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
question: 'Hoe werkt de toonhoogte sweep?',
|
|
144
|
+
answer: 'De slider berekent de eindfrequentie evenredig aan de startfrequentie.',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
question: 'Wat te doen als er geen geluid is?',
|
|
148
|
+
answer: 'Controleer of audio is toegestaan in je browser en klik opnieuw op Geluid afspelen.',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
howTo: [
|
|
152
|
+
{
|
|
153
|
+
name: 'Kies een preset',
|
|
154
|
+
text: 'Kies Explosie, Laser, Sprong, Munt of Power-up.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
name: 'Vorm het signaal',
|
|
158
|
+
text: 'Pas golfvorm, frequentie, duur en filters aan.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
name: 'Beluister het resultaat',
|
|
162
|
+
text: 'Klik op Geluid afspelen voor een live preview.',
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
name: 'Download WAV',
|
|
166
|
+
text: 'Klik op Download WAV om het bestand op te slaan.',
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
schemas: [
|
|
170
|
+
{
|
|
171
|
+
'@context': 'https://schema.org',
|
|
172
|
+
'@type': 'SoftwareApplication',
|
|
173
|
+
name: 'Retro Geluidseffect Generator voor Games',
|
|
174
|
+
applicationCategory: 'MultimediaApplication',
|
|
175
|
+
operatingSystem: 'Any',
|
|
176
|
+
offers: {
|
|
177
|
+
'@type': 'Offer',
|
|
178
|
+
price: '0',
|
|
179
|
+
priceCurrency: 'EUR',
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
'@context': 'https://schema.org',
|
|
184
|
+
'@type': 'FAQPage',
|
|
185
|
+
mainEntity: [
|
|
186
|
+
{
|
|
187
|
+
'@type': 'Question',
|
|
188
|
+
name: 'Worden mijn geluiden geupload naar een server?',
|
|
189
|
+
acceptedAnswer: {
|
|
190
|
+
'@type': 'Answer',
|
|
191
|
+
text: 'Nee. Alle synthese vindt plaats in je browser.',
|
|
192
|
+
},
|
|
193
|
+
},
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
'@context': 'https://schema.org',
|
|
198
|
+
'@type': 'HowTo',
|
|
199
|
+
name: 'Hoe maak je een retro geluidseffect',
|
|
200
|
+
step: [
|
|
201
|
+
{
|
|
202
|
+
'@type': 'HowToStep',
|
|
203
|
+
name: 'Kies een preset',
|
|
204
|
+
text: 'Kies een geluidspreset.',
|
|
205
|
+
},
|
|
206
|
+
],
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
bibliographyTitle: 'Referenties',
|
|
210
|
+
bibliography: bibliographyEntries,
|
|
211
|
+
};
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
2
|
+
import type { RetroSfxGeneratorUI } from '../ui';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
|
|
5
|
+
export const content: ToolLocaleContent<RetroSfxGeneratorUI> = {
|
|
6
|
+
slug: 'generator-efektow-dwoiekowych-retro-gry',
|
|
7
|
+
title: 'Generator Efektow Dwiekowych Retro do Gier',
|
|
8
|
+
description: 'Tworz retro efekty dzwiekowe do gier w przegladarce dzieki gotowym ustawieniom, kontroli fal, oscyloskopowi na zywo i eksportowi WAV.',
|
|
9
|
+
ui: {
|
|
10
|
+
waveformLabel: 'Ksztalt fali',
|
|
11
|
+
waveformSquare: 'Kwadratowa',
|
|
12
|
+
waveformSawtooth: 'Pila',
|
|
13
|
+
waveformSine: 'Sinusoidalna',
|
|
14
|
+
waveformTriangle: 'Trojkatna',
|
|
15
|
+
waveformNoise: 'Szum',
|
|
16
|
+
presetLabel: 'Szybki bank dzwiekow',
|
|
17
|
+
presetExplosion: 'Wybuch',
|
|
18
|
+
presetLaser: 'Laser',
|
|
19
|
+
presetJump: 'Skok',
|
|
20
|
+
presetCoin: 'Moneta',
|
|
21
|
+
presetPowerUp: 'Udoskonalenie',
|
|
22
|
+
frequencyLabel: 'Czestotliwosc poczatkowa',
|
|
23
|
+
frequencyEndLabel: 'Czestotliwosc koncowa',
|
|
24
|
+
durationLabel: 'Dlugosc',
|
|
25
|
+
decayLabel: 'Wygaszanie',
|
|
26
|
+
sweepLabel: 'Zmiana tonu',
|
|
27
|
+
vibratoLabel: 'Vibrato',
|
|
28
|
+
lowpassLabel: 'Dolnoprzepustowy',
|
|
29
|
+
highpassLabel: 'Gornoprzepustowy',
|
|
30
|
+
noiseMixLabel: 'Mieszanka szumu',
|
|
31
|
+
toneSection: 'Ton',
|
|
32
|
+
dynamicsSection: 'Dynamika',
|
|
33
|
+
filterSection: 'Tekstura',
|
|
34
|
+
playButton: 'Odtworz dzwiek',
|
|
35
|
+
stopButton: 'Zatrzymaj',
|
|
36
|
+
downloadButton: 'Pobierz WAV',
|
|
37
|
+
randomizeButton: 'Losuj',
|
|
38
|
+
resetButton: 'Resetuj',
|
|
39
|
+
waveformPreviewLabel: 'Podglad fali na zywo',
|
|
40
|
+
generatedLabel: 'Wygenerowano',
|
|
41
|
+
statusReady: 'Gotowy do odsluchu',
|
|
42
|
+
statusPlaying: 'Odtwarzanie w przegladarce',
|
|
43
|
+
statusStopped: 'Zatrzymano odtwarzanie',
|
|
44
|
+
statusDownloaded: 'Pobrano plik WAV',
|
|
45
|
+
statusAudioBlocked: 'Odtwarzanie wymaga zezwolenia na dzwiek w karcie przegladarki',
|
|
46
|
+
statusGenerating: 'Generowanie dzwieku',
|
|
47
|
+
presetHint: 'Wybierz punkt startowy i dostosuj sygnal ponizszymi suwakami.',
|
|
48
|
+
monoWavHint: '44.1 kHz · 16-bitowy mono WAV',
|
|
49
|
+
},
|
|
50
|
+
seo: [
|
|
51
|
+
{
|
|
52
|
+
type: 'title',
|
|
53
|
+
level: 2,
|
|
54
|
+
text: 'Tworz dzwiek do gier podczas Game Jamu bezpośrednio w przegladarce',
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
type: 'paragraph',
|
|
58
|
+
html: 'Dobre efekty dzwiekowe w grach natychmiast przekazuja informacje o akcji. Narzedzie to umozliwia szybkie tworzenie klasycznych dzwiekow retro za pomoca syntezy audio w przegladarce.',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
type: 'stats',
|
|
62
|
+
columns: 4,
|
|
63
|
+
items: [
|
|
64
|
+
{ label: 'Ustawienia dzwieku', value: '5 wzorcow' },
|
|
65
|
+
{ label: 'Oscylatory', value: '5 ksztaltow fal' },
|
|
66
|
+
{ label: 'Format eksportu', value: '16-bitowy PCM WAV' },
|
|
67
|
+
{ label: 'Przetwarzanie', value: 'W przegladarce' },
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
level: 2,
|
|
73
|
+
text: 'Co zmieniaja poszczegolne suwaki',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'comparative',
|
|
77
|
+
columns: 2,
|
|
78
|
+
items: [
|
|
79
|
+
{
|
|
80
|
+
title: 'Ton i ruch',
|
|
81
|
+
description: 'Elementy sterujace tonem definiuja tozsamosc dzwieku.',
|
|
82
|
+
points: [
|
|
83
|
+
'Czestotliwosc poczatkowa wyznacza glowny ton oscylatora',
|
|
84
|
+
'Zmiana tonu przesuwa czestotliwosc do wartosci koncowej',
|
|
85
|
+
'Vibrato dodaje delikatne wahania tonu',
|
|
86
|
+
'Rozne falowe ksztalty tworza unikalne barwy',
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
title: 'Ksztalt i tekstura',
|
|
91
|
+
description: 'Dynamika i filtry kszaltuja wybrzmiewanie dzwieku.',
|
|
92
|
+
points: [
|
|
93
|
+
'Dlugosc okresla calkowity czas trwania efektu',
|
|
94
|
+
'Wygaszanie reguluje spadek glosnosci w czasie',
|
|
95
|
+
'Filtr dolnoprzepustowy lagodzi wysokie czestotliwosci',
|
|
96
|
+
'Filtr gornoprzepustowy usuwa niskie tony',
|
|
97
|
+
],
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
type: 'title',
|
|
103
|
+
level: 2,
|
|
104
|
+
text: 'Praktyczne przepisy na typowe zdarzenia w grach',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
type: 'table',
|
|
108
|
+
headers: ['Zdarzenie', 'Przydatne ustawienie', 'Pierwsza zmiana do wyprobowania'],
|
|
109
|
+
rows: [
|
|
110
|
+
['Wybuch', 'Szum o niskiej czestotliwosci', 'Zwieksz dlugosc i obniz filtr dolnoprzepustowy'],
|
|
111
|
+
['Laser', 'Pila z opadajaca zmiana tonu', 'Skroc dlugosc i podnies filtr gornoprzepustowy'],
|
|
112
|
+
['Skok', 'Kwadrat z rosraca zmiana tonu', 'Zmniejsz wygaszanie, aby wyraznie slyszec wzrost tonu'],
|
|
113
|
+
['Moneta', 'Kwadrat z krotka rosnaca zmiana tonu', 'Zwieksz czestotliwosc poczatkowa dla jasnego dzwieku'],
|
|
114
|
+
['Udoskonalenie', 'Trojkat z dluga rosnaca zmiana tonu', 'Dodaj troche vibrato dla dynamicznego efektu'],
|
|
115
|
+
],
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
level: 2,
|
|
120
|
+
text: 'Dlaczego WAV to idealny format eksportu',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: 'Pliki WAV sa natywnie obslugiwane przez wiekszosc silnikow gier i edytorow audio bez koniecznosci stosowania dodatkowych bibliotek.',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'tip',
|
|
128
|
+
title: 'Testuj przy docelowej glosnosci gry',
|
|
129
|
+
html: 'Dzwiek brzmiacy atrakcyjnie osobno moze byc meczacy, gdy powtarza sie wielokrotnie w grze. Przetestuj go w silniku gry razem z muzyka.',
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
faqTitle: 'Czesto zadawane pytania',
|
|
133
|
+
faq: [
|
|
134
|
+
{
|
|
135
|
+
question: 'Czy moje dzwieki sa wysylane na serwer?',
|
|
136
|
+
answer: 'Nie. Caly proces syntezy i generowania pliku WAV odbywa sie lokalnie w przegladarce.',
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
question: 'Czy moge uzyc pobranych dzwiekow w mojej grze?',
|
|
140
|
+
answer: 'Tak. Wygenerowane dzwieki sa przeznaczone do prototypow i gier niezaleznych.',
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
question: 'Jak dziala zmiana tonu?',
|
|
144
|
+
answer: 'Suwak oblicza czestotliwosc koncowa proporcjonalnie do czestotliwosci poczatkowej.',
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
question: 'Co zrobic, gdy nie slychac dzwieku?',
|
|
148
|
+
answer: 'Upewnij sie, ze karta przegladarki ma uprawnienia do odtwarzania dzwieku i kliknij Odtworz dzwiek ponownie.',
|
|
149
|
+
},
|
|
150
|
+
],
|
|
151
|
+
howTo: [
|
|
152
|
+
{
|
|
153
|
+
name: 'Wybierz zestaw dzwiekow',
|
|
154
|
+
text: 'Wybierz Wybuch, Laser, Skok, Moneta lub Udoskonalenie.',
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
name: 'Dostosuj sygnal',
|
|
158
|
+
text: 'Ustaw ksztalt fali, ton, dlugosc, wygaszanie i filtry.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
name: 'Odsluchaj wynik',
|
|
162
|
+
text: 'Kliknij Odtworz dzwiek, aby uslyszec podglad.',
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
name: 'Pobierz WAV',
|
|
166
|
+
text: 'Kliknij Pobierz WAV, aby zapisac plik na dysku.',
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
schemas: [
|
|
170
|
+
{
|
|
171
|
+
'@context': 'https://schema.org',
|
|
172
|
+
'@type': 'SoftwareApplication',
|
|
173
|
+
name: 'Generator Efektow Dwiekowych Retro do Gier',
|
|
174
|
+
applicationCategory: 'MultimediaApplication',
|
|
175
|
+
operatingSystem: 'Any',
|
|
176
|
+
offers: {
|
|
177
|
+
'@type': 'Offer',
|
|
178
|
+
price: '0',
|
|
179
|
+
priceCurrency: 'PLN',
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
'@context': 'https://schema.org',
|
|
184
|
+
'@type': 'FAQPage',
|
|
185
|
+
mainEntity: [
|
|
186
|
+
{
|
|
187
|
+
'@type': 'Question',
|
|
188
|
+
name: 'Czy moje dzwieki sa wysylane na serwer?',
|
|
189
|
+
acceptedAnswer: {
|
|
190
|
+
'@type': 'Answer',
|
|
191
|
+
text: 'Nie. Caly proces odbywa sie w przegladarce.',
|
|
192
|
+
},
|
|
193
|
+
},
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
'@context': 'https://schema.org',
|
|
198
|
+
'@type': 'HowTo',
|
|
199
|
+
name: 'Jak stworzyc retro dzwiek do gry',
|
|
200
|
+
step: [
|
|
201
|
+
{
|
|
202
|
+
'@type': 'HowToStep',
|
|
203
|
+
name: 'Wybierz zestaw dzwiekow',
|
|
204
|
+
text: 'Wybierz gotowe ustawienie.',
|
|
205
|
+
},
|
|
206
|
+
],
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
bibliographyTitle: 'Bibliografia',
|
|
210
|
+
bibliography: bibliographyEntries,
|
|
211
|
+
};
|