-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdb-init.js
2084 lines (2024 loc) · 120 KB
/
db-init.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/* db-init.js -- This initializes the database where all resources belong.
Playlist Red
Video Brief video or video series about a topic.
Graphic Image demonstrating techniques or explaining topics.
Podcast Scarlet (podcasters are considered channels)
Singular episode covering a topic.
Article Orange
List Brief text resource about a topic.
Channel Yellow
Website Sites that explore a topic or cover several at once.
Wiki
Book Green
Online Manual Thorough text resource fully covering a subject.
PDF
Course Blue
Udemy Fully covers a subject and offers exercises, homework, and tests.
Software Purple
Download Tools and non-educational files for practicing your crafts.
Supplies
*/
// Initialize a global variable for the database itself.
var dLinks = TAFFY([]);
var dTopics = TAFFY([]);
/// Programming
dTopics.insert( { "sTopicID" : "prog-intro", "sTopic" : "An Introduction to Programming",
"aChapters" : [
[ "prog-what-is", "What is Programming?" ],
[ "prog-IDEs", "Integrated Development Environments" ],
[ "prog-safety", "Programmer Safety" ],
[ "prog-utilties", "Programmer Utilities" ]
]
} );
dTopics.insert( { "sTopicID" : "prog-c", "sTopic" : "The C Programming Language",
"aChapters" : [
[ "prog-c-books-references", "Books and References on C" ],
]
} );
dTopics.insert( { "sTopicID" : "prog-c-sharp", "sTopic" : "The C# Programming Language",
"aChapters" : [
[ "prog-c-sharp-books", "Books and References on C#" ],
[ "prog-c-sharp-intro", "The Basics of C#" ],
[ "prog-c-sharp-data", "C# Data Types and Constants" ],
[ "prog-c-ops-conds", "C# Operators and Conditionals" ],
]
} );
dTopics.insert( { "sTopicID" : "prog-lua", "sTopic" : "The Lua Programming Language",
"aChapters" : [
[ "prog-lua-books-references", "Books and References on Lua" ]
]
} );
dTopics.insert( { "sTopicID" : "prog-eng-love2d", "sTopic" : "The Love2D Engine",
"aChapters" : [
[ "prog-love2d-engine-software", "Love2D Engine and Softwares" ],
[ "prog-love2d-engine-basics", "Basics of the Love2D Engine" ]
]
} );
dTopics.insert( { "sTopicID" : "prog-eng-godot", "sTopic" : "GDScript and the Godot Engine",
"aChapters" : [
[ "prog-godot-engine-software", "Godot Engine and Softwares" ],
[ "prog-godot-engine-basics", "Basics of Godot" ],
[ "prog-gdscript-overview", "Overview of GDScript" ]
]
} );
/// Writing
dTopics.insert( { "sTopicID" : "writ-intro", "sTopic" : "Introduction and Fundamentals of Writing",
"aChapters" : [
[ "writ-intro-articles", "Introduction to Writing for Video Games" ],
[ "writ-software", "Software for Writing" ],
[ "writ-story-fundamentals", "Fundamentals of Storytelling" ]
]
} );
dTopics.insert( { "sTopicID" : "writ-worldbuilding", "sTopic" : "Worldbuilding",
"aChapters" : [
[ "writ-worldbuilding-intro", "The Basics of Worldbuilding" ],
]
} );
/// Sound Design
dTopics.insert( { "sTopicID" : "sd-intro", "sTopic" : "Introduction to Sound Design",
"aChapters" : [
[ "sd-intro-articles", "What is Sound Design?" ],
[ "sd-software", "Sound Design Software" ],
[ "sd-pros", "Sound Design Professionals" ],
]
} );
dTopics.insert( { "sTopicID" : "sd-fundamentals", "sTopic" : "Fundamentals of Audio",
"aChapters" : [
[ "sd-fundamentals-full", "Full Courses on Audio Fundamentals" ]
]
} );
dTopics.insert( { "sTopicID" : "sd-recording", "sTopic" : "Recording Techniques in Sound Design",
"aChapters" : [
[ "sd-recording-vocals", "Recording Vocals" ]
]
} );
dTopics.insert( { "sTopicID" : "sd-processing", "sTopic" : "Processing Techniques in Sound Design",
"aChapters" : [
[ "sd-processing-vocals", "Processing Vocals" ]
]
} );
/// Music Production
dTopics.insert( { "sTopicID" : "mp-intro", "sTopic" : "Introduction to Music Production",
"aChapters" : [
[ "mp-what-is", "What is Music Production?" ],
[ "mp-musician-safety", "Musician Safety" ],
[ "mp-daws", "Digital Audio Workstations" ],
[ "mp-vsts", "VST Instruments for DAWs" ],
]
} );
dTopics.insert( { "sTopicID" : "mp-music-theory", "sTopic" : "Music Theory",
"aChapters" : [
[ "mp-music-theory-courses", "Full Courses in Music Theory" ],
]
} );
dTopics.insert( { "sTopicID" : "mp-tracking-stage", "sTopic" : "Tracking",
"aChapters" : [
[ "mp-tracking-what-is", "What is Tracking?" ],
[ "mp-tracking-advice", "Tracking Advice" ],
[ "mp-synthesis", "Synthesis" ],
]
} );
dTopics.insert( { "sTopicID" : "mp-mixing-stage", "sTopic" : "Mixing and Mastering",
"aChapters" : [
[ "mp-mixing", "Mixing Advice" ],
[ "mp-mastering", "Mastering Advice" ],
]
} );
dTopics.insert( { "sTopicID" : "mp-applications", "sTopic" : "Applications of Video Game Music",
"aChapters" : [
[ "mp-music-application", "Examples of Music Application" ],
]
} );
/// Art
dTopics.insert( { "sTopicID" : "art-intro", "sTopic" : "Introduction to Art",
"aChapters" : [
[ "art-what-is", "What is Art?" ],
[ "art-safety", "Artist Safety" ],
[ "art-artist-advice", "Artist Advice" ],
[ "art-raster-software", "Raster Art Software" ],
[ "art-vector-software", "Vector Art Software" ],
[ "art-software-assets", "Art Software Assets" ],
[ "art-software-techniques", "Art Software Techniques" ],
[ "art-databases", "Art Databases" ],
]
} );
dTopics.insert( { "sTopicID" : "art-fundamentals-topic", "sTopic" : "Fundamentals of Art",
"aChapters" : [
[ "art-fundamentals", "Fundamentals of Art" ],
]
} );
dTopics.insert( { "sTopicID" : "art-human-anatomy-topic", "sTopic" : "Human Anatomy",
"aChapters" : [
[ "art-human-anatomy", "Human Anatomy" ],
[ "art-human-skeleton", "Human Skeleton" ],
[ "art-human-head", "Human Head & Face" ],
[ "art-human-hairstyles", "Human Hairstyles" ],
[ "art-human-eyes", "Human Eyes" ],
[ "art-human-ears", "Human Ears" ],
[ "art-human-torso", "Human Torso" ],
[ "art-human-arms", "Human Arms" ],
[ "art-human-hands", "Human Hands" ],
[ "art-human-waist", "Human Waist & Lower" ],
[ "art-human-legs", "Human Legs" ],
[ "art-human-feet", "Human Feet" ],
]
} );
dTopics.insert( { "sTopicID" : "art-drawing", "sTopic" : "References for Drawing Other Things",
"aChapters" : [
[ "art-draw-structures", "Drawing Structures" ],
[ "art-animals", "Drawing Animals" ],
[ "art-draw-materials", "Drawing Materials" ],
[ "art-nature", "Drawing Nature" ],
[ "art-weapons", "Drawing Weapons" ],
[ "art-effects", "Drawing Magic & Effects" ],
]
} );
dTopics.insert( { "sTopicID" : "art-specializations", "sTopic" : "Specializations of Artists",
"aChapters" : [
[ "art-concept-artist", "Concept Artists" ],
[ "art-comic-artist", "Comic Book Artists" ],
[ "art-sprite-artist", "Pixel and Sprite Artists" ],
[ "art-storyboard-artist", "Storyboard Artists" ],
]
} );
dTopics.insert( { "sTopicID" : "art-animation", "sTopic" : "2D Animation",
"aChapters" : [
[ "art-2d-animation", "2D Animation Collection" ],
]
} );
/// 3D Modelling
dTopics.insert( { "sTopicID" : "3d-intro", "sTopic" : "Introduction to 3D Modelling",
"aChapters" : [
[ "3d-what-is", "What is 3D Modelling?" ],
[ "3d-safety", "Artist Safety" ],
[ "3d-advice", "Artist Advice" ],
[ "3d-asset-software", "3D Asset Software" ],
[ "3d-software-assets", "Art Software Assets" ],
]
} );
dTopics.insert( { "sTopicID" : "3d-softwares", "sTopic" : "Manuals, Advice, and Resources for 3D Software",
"aChapters" : [
[ "3d-blender-group", "Blender" ],
[ "3d-3dsmax", "3DS Max" ],
[ "3d-maya", "Maya" ],
[ "3d-free-textures", "Free Texture Sites" ],
]
} );
//
dTopics.insert( { "sTopicID" : "3d-blender", "sTopic" : "Manuals, Advice, and Resources for 3D Software",
"aChapters" : [
[ "3d-blender-books", "Blender Manuals and Courses" ],
]
} );
dTopics.insert( { "sTopicID" : "3d-animation-topic", "sTopic" : "3D Animation",
"aChapters" : [
[ "3d-animation", "3D Animation Collection" ],
]
} );
/// Game Design
dTopics.insert( { "sTopicID" : "gd-intro", "sTopic" : "Introduction to Game Design",
"aChapters" : [
[ "gd-what-is", "What is Game Design?" ],
[ "gd-utilities", "Game Design Tools" ],
[ "gd-topic-channels", "Game Design Topic Channels" ],
]
} );
/// User Experience
dTopics.insert( { "sTopicID" : "ux-intro", "sTopic" : "Introduction to User Experience",
"aChapters" : [
[ "ux-what-is", "What is User Experience?" ],
[ "ux-websites", "Websites on UX Design" ],
]
} );
dTopics.insert( { "sTopicID" : "ux-menus", "sTopic" : "User-Friendly Menus",
"aChapters" : [
[ "ux-menu-cases", "Case Studies: Menus" ],
]
} );
/// Quality Assurance
dTopics.insert( { "sTopicID" : "qa-intro", "sTopic" : "Introduction to Quality Assurance",
"aChapters" : [
[ "qa-what-is", "What is Quality Assurance?" ],
[ "qa-basics", "Basics of Quality Assurance" ],
]
} );
dTopics.insert( { "sTopicID" : "qa-techniques", "sTopic" : "Techniques in Software Testing",
"aChapters" : [
[ "qa-testing-overview", "What Are the Software Testing Techniques?" ],
]
} );
/// Production & Project Management
dTopics.insert( { "sTopicID" : "ppm-intro", "sTopic" : "Introduction to Production and Project Management",
"aChapters" : [
[ "ppm-what-is", "What is a Producer and What is Project Management?" ],
[ "ppm-software", "Project Management Software" ],
]
} );
dTopics.insert( { "sTopicID" : "ppm-documentation", "sTopic" : "Project Documentation",
"aChapters" : [
[ "ppm-design-docs", "Design Documents" ],
]
} );
/// Marketing
dTopics.insert( { "sTopicID" : "mkt-intro", "sTopic" : "Introduction to Marketing",
"aChapters" : [
[ "mkt-what-is", "What is Marketing?" ],
]
} );
dTopics.insert( { "sTopicID" : "mkt-inbound", "sTopic" : "Inbound Marketing",
"aChapters" : [
[ "mkt-market-research", "Market Research" ],
[ "mkt-seo", "Search Engine Optimizaton (SEO) Basics" ],
[ "mkt-seo-mistakes", "Avoiding SEO Mistakes" ],
[ "mkt-seo-advanced", "Advanced Technical SEO Knowledge" ],
[ "mkt-seo-tools", "Tools for Search Engine Optimization" ],
]
} );
dTopics.insert( { "sTopicID" : "mkt-outbound", "sTopic" : "Outbound Marketing",
"aChapters" : [
[ "mkt-unthical-practices", "Unethical Practices and Bad Marketing" ],
[ "mkt-asset-sales", "Asset Sales" ],
]
} );
/// Financial Management
dTopics.insert( { "sTopicID" : "fm-intro", "sTopic" : "Introduction to Financial Management",
"aChapters" : [
[ "fm-what-is", "What are Finances and What is Financial Management?" ],
]
} );
dTopics.insert( { "sTopicID" : "fm-logistics-projections", "sTopic" : "Logistics and Projections",
"aChapters" : [
[ "fm-business-plan-templates", "Template Files for Business Plans" ],
]
} );
dTopics.insert( { "sTopicID" : "fm-taxes", "sTopic" : "Business Taxes",
"aChapters" : [
[ "fm-business-taxes", "Small Business Taxes" ],
]
} );
/// Business Management & Law
dTopics.insert( { "sTopicID" : "bl-intro", "sTopic" : "Introduction to Business Management and Law",
"aChapters" : [
[ "bl-what-is", "What is Business Management and What Are My Legal Responsibilities?" ],
]
} );
dTopics.insert( { "sTopicID" : "bl-start", "sTopic" : "Starting a Business",
"aChapters" : [
[ "bl-plans", "Business Plans" ],
[ "bl-permits", "Business IDs, Forms, and Permits" ],
]
} );
dTopics.insert( { "sTopicID" : "bl-labor", "sTopic" : "Labor Laws and Employee Safety",
"aChapters" : [
[ "bl-labor-law", "Labor Laws" ],
[ "bl-labor-hiring", "Hiring and Getting Hired" ],
[ "bl-labor-safety", "Employee Safety" ],
[ "bl-labor-environments", "Employee Environments" ],
]
} );
/*
dTopics.insert( { "sTopicID" : "", "sTopic" : "",
"aChapters" : [
[ "", "" ]
]
} );
*/
//console.log( dTopics().first().topic_array[0][1] );
/* This template is used when making a database entry.
dLinks.insert( { "sSection" : "", "sTag" : "", "sTagColor": "",
"sURL" : "",
"sSummary" : "",
"sDetails" : ""
} );
*/
// ### prog-what-is ############################################################
dLinks.insert( { "sSection" : "prog-what-is", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=DrNWRlelOEg",
"sSummary" : "Introduction to Programming",
"sDetails" : "StudyGameDev presents: A brief overview of programming for game developers."
} );
dLinks.insert( { "sSection" : "prog-what-is", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=WCuUWGmatpU",
"sSummary" : "So You Want to Be a Developer (part 1)",
"sDetails" : "Extra Credits asks what skills do you need to be a great developer?"
} );
dLinks.insert( { "sSection" : "prog-what-is", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=kqFcF_jRrx0",
"sSummary" : "So You Want to Be a Developer (part 2)",
"sDetails" : "Teamwork and communication are absolutely essential to helping you make great code."
} );
dLinks.insert( { "sSection" : "prog-what-is", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=RU1u-js7dLinks8",
"sSummary" : "The First Programming Languages",
"sDetails" : "PBS's Crash Course dives into examples of machine language to give you an idea of what language the CPU speaks in, and what the first programming languages were like."
} );
dLinks.insert( { "sSection" : "prog-what-is", "sTag" : "Wiki", "sTagColor" : "yellow",
"sURL" : "https://en.wikipedia.org/wiki/Game_programming#Programming_languages",
"sSummary" : "Comparison of Programming Languages",
"sDetails" : "Wikipedia's subsection in its Game Programming article that breaks down the pros and cons of each programming language."
} );
dLinks.insert( { "sSection" : "prog-what-is", "sTag" : "Wiki", "sTagColor" : "yellow",
"sURL" : "https://en.wikipedia.org/wiki/List_of_game_engines",
"sSummary" : "Comparison of Game Engines",
"sDetails" : "A rather overwhelming list of game engines that have been/are used for video game development."
} );
// ### prog-IDES ###############################################################
dLinks.insert( { "sSection" : "prog-IDEs", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "http://www.codeblocks.org/",
"sSummary" : "Code::Blocks (C, C++)",
"sDetails" : "Solid, GPL-friendly beginner's IDE."
} );
dLinks.insert( { "sSection" : "prog-IDEs", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://www.eclipse.org/downloads/",
"sSummary" : "Eclipse (C, C++, Java, PHP)",
"sDetails" : "Professional and helpful beginner's IDE."
} );
dLinks.insert( { "sSection" : "prog-IDEs", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://atom.io/#ide",
"sSummary" : "Atom",
"sDetails" : "Powerful, versatile text editor with lots features and can even serve as an IDE."
} );
dLinks.insert( { "sSection" : "prog-IDEs", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://www.visualstudio.com/",
"sSummary" : "Microsoft Visual Studio ($)",
"sDetails" : "On Windows, this is an industry-leading IDE. Free for individuals."
} );
dLinks.insert( { "sSection" : "prog-what-is", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/playlist?list=PLhyKYa0YJ_5C6QC36h5eApOyXtx98ehGi",
"sSummary" : "How To Start Your Game Development",
"sDetails" : "Most people on this section are thinking about doing their first video game. This playlist of videos is about making your first game."
} );
// ### prog-safety #############################################################
dLinks.insert( { "sSection" : "prog-safety", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://twitter.com/gcmulk/status/862478705616093184",
"sSummary" : "Injury Risk Reduction Exercises",
"sDetails" : "These exercises, illustrated by Twitter user gcmulk, are sourced from Summit Medical, McHesson health (2001), HEP2Go. Journals: Bandy and Irion (1997), Page (IJSPT, 2012)"
} );
dLinks.insert( { "sSection" : "prog-safety", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://twitter.com/nitro_nova/status/1028365305540694016",
"sSummary" : "Professionally Suggested Preventative Stretch Procedures",
"sDetails" : "I compiled a list of videos from established physical therapists on exercises and stretches that can help prevent the physical damage that game development can cause. \
These can combat carpal tunnel, cubital tunnel, back aches, neck aches, and more."
} );
// ### prog-utilities ##########################################################
dLinks.insert( { "sSection" : "prog-utilties", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://www.yworks.com/products/yed",
"sSummary" : "yEd Graph Editing Software",
"sDetails" : "Excellent tool for creating flow charts, UML diagrams, and more."
} );
dLinks.insert( { "sSection" : "prog-utilties", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=UI6lqHOVHic",
"sSummary" : "UML Class Diagram Tutorial",
"sDetails" : "Check this out after you learn a bit about programming. Learn the top-down design tool that is UML and how a diagram software can help you plan your project."
} );
// ### prog-c-books-references #################################################
dLinks.insert( { "sSection" : "prog-c-books-references", "sTag" : "Book", "sTagColor" : "green",
"sURL" : "http://www-personal.acfr.usyd.edu.au/tbailey/ctext/ctext.pdf",
"sSummary" : "Intro to C & Software Design",
"sDetails" : "Tim Bailey's intro to C and software design. Types, operators, expressions, branching, iteration, functions, scope, extent, pointers, arrays, preprocessor directives, structures, unions, bitwise, input/output, data structures, etc."
} );
dLinks.insert( { "sSection" : "prog-c-books-references", "sTag" : "Online Manual", "sTagColor" : "green",
"sURL" : "https://c-language.com/",
"sSummary" : "Learn C for Beginners, by Surendren",
"sDetails" : "Surendren provides an online manual that can help you get started with learning C."
} );
dLinks.insert( { "sSection" : "prog-c-books-references", "sTag" : "Website", "sTagColor" : "yellow",
"sURL" : "https://www.tutorialspoint.com/c_standard_library/index.htm",
"sSummary" : "The C Standard Library",
"sDetails" : "For each function you encounter from the standard library, you should look it up here to understand it better. For example, did you know printf returns an integer? This is stuff you should learn."
} );
// ### prog-c-sharp-books ######################################################
dLinks.insert( { "sSection" : "prog-c-sharp-books", "sTag" : "Book", "sTagColor" : "green",
"sURL" : "https://static1.squarespace.com/static/5019271be4b0807297e8f404/t/5824ad58f7e0ab31fc216843/1478798685347/CSharp+Book+2016+Rob+Miles+8.2.pdf",
"sSummary" : "The Yellow Book (Cheese Edition)",
"sDetails" : "Rob Miles's Beginner-Level C# Book"
} );
// ### prog-c-sharp-intro ######################################################
dLinks.insert( { "sSection" : "prog-c-sharp-intro", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.developer.com/net/asp/article.php/922211/What-is-C.htm",
"sSummary" : "What is C#?",
"sDetails" : "Developer.com writer Bradley Jones describes C# and what its benefits are, compared to other languages."
} );
dLinks.insert( { "sSection" : "prog-c-sharp-intro", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_program_structure.htm",
"sSummary" : "Basic Program Structure of a C# Program (Pt. 1)",
"sDetails" : "TutorialsPoint provides simple entry-level explanations for the basic components of a C# program."
} );
dLinks.insert( { "sSection" : "prog-c-sharp-intro", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_basic_syntax.htm",
"sSummary" : "Basic Program Structure of a C# Program (Pt. 2)",
"sDetails" : "TutorialsPoint goes into detail involving the basic syntax of C#."
} );
// ### prog-c-sharp-data #######################################################
dLinks.insert( { "sSection" : "prog-c-sharp-data", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_variables.htm",
"sSummary" : "C# Variables",
"sDetails" : "Variables in C# are just like variables in other languages."
} );
dLinks.insert( { "sSection" : "prog-c-sharp-data", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_data_types.htm",
"sSummary" : "C# Data Types",
"sDetails" : "TutorialsPoint details on the data types of variables in C#."
} );
dLinks.insert( { "sSection" : "prog-c-sharp-data", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_type_conversion.htm",
"sSummary" : "C# Data Types, Part 2: Type Conversion",
"sDetails" : "Sometimes you'll need to convert your data types. Here's how to do it in C#."
} );
dLinks.insert( { "sSection" : "prog-c-sharp-data", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_constants.htm",
"sSummary" : "C# Constants",
"sDetails" : "Where variables hold data, constants *are* the data."
} );
// ### prog-c-ops-conds ########################################################
dLinks.insert( { "sSection" : "prog-c-ops-conds", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_operators.htm",
"sSummary" : "C# Operators",
"sDetails" : "An explanation of the various operators in C#"
} );
dLinks.insert( { "sSection" : "prog-c-ops-conds", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_decision_making.htm",
"sSummary" : "C# Conditionals, Part 1: Branch Conditionals",
"sDetails" : "An overview of if, if-else, and switch statements, as well as the nesting of each."
} );
dLinks.insert( { "sSection" : "prog-c-ops-conds", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.tutorialspoint.com/csharp/csharp_loops.htm",
"sSummary" : "C# Conditionals, Part 2: Loop Conditionals",
"sDetails" : "Covers for, do-while, and while loops. Also covers loop control keywords such as break and continue."
} );
// ### prog-lua-books-references ###############################################
dLinks.insert( { "sSection" : "prog-lua-books-references", "sTag" : "Website", "sTagColor" : "yellow",
"sURL" : "https://www.lua.org/docs.html",
"sSummary" : "Official Lua Docs Portal",
"sDetails" : "The official Lua documentation portal contains links to Lua's reference manual as well as links to books you can learn the language from. Note: Do not try to learn Lua from the reference manual; \
it is not designed to teach beginners how to code with it."
} );
dLinks.insert( { "sSection" : "prog-lua-books-references", "sTag" : "Book", "sTagColor" : "green",
"sURL" : "http://crypto.cs.mcgill.ca/~simonpie/webdav/ipad/EBook/Programmation/Beginning%20Lua%20Programming.pdf",
"sSummary" : "Beginning Lua Programming",
"sDetails" : "Kurt Jung and Aaron Brown's (now outdated) beginner's manual to programming in Lua. Should still work fine for covering the basics."
} );
// ### prog-love2d-engine-software #############################################
dLinks.insert( { "sSection" : "prog-love2d-engine-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://love2d.org/",
"sSummary" : "LÖVE2D Game Engine",
"sDetails" : "Here you can download the Love2D game engine. Additionally, the site links to forums and a wiki for documentation."
} );
// ### prog-love2d-engine-basics ###############################################
dLinks.insert( { "sSection" : "prog-love2d-engine-basics", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://youtu.be/FUiz1kL0QtI?list=PLz-rYTT-2nItPbZaj8pt10h49HofbWVQT",
"sSummary" : "Love2D Tutorial Videos (Beginner)",
"sDetails" : "Four-part tutorial series done by Spunky Kangaroo."
} );
dLinks.insert( { "sSection" : "prog-love2d-engine-basics", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=Jte9o4S6rlo&feature=youtu.be&list=PLZVNxI_lsRW2kXnJh2BMb6D82HCAoSTUB&t=15",
"sSummary" : "Love2D Tutorial Videos (Advanced)",
"sDetails" : "YouTuber recursor offers a more thorough course on developing games using Love2D."
} );
// ### prog-godot-engine-software ##############################################
dLinks.insert( { "sSection" : "prog-godot-engine-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://godotengine.org/",
"sSummary" : "Godot Engine",
"sDetails" : "A free, open-source, and permissively licensed game development engine with unique approaches to production and workflow."
} );
// ### prog-godot-engine-basics ################################################
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=qVl3BYY6zaQ",
"sSummary" : "What is Godot?",
"sDetails" : "GDQuest discusses Godot (this engine will update itself a lot over a short time, but these links will generally apply for future versions)"
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Online Manual", "sTagColor" : "green",
"sURL" : "http://docs.godotengine.org/en/3.1/index.html",
"sSummary" : "Godot Docs",
"sDetails" : "A crucial reference for working in the Godot engine. The Getting Started section is worth a read."
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://docs.godotengine.org/en/3.1/getting_started/step_by_step/intro_to_the_editor_interface.html#project-manager",
"sSummary" : "Creating and Managing Projects in Godot",
"sDetails" : "One of the first interfaces you encounter is the project management window. This article explains it."
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=hG_MgGHAX-Q",
"sSummary" : "Getting Started in Godot",
"sDetails" : "Gamefromscratch provides a pretty thorough introduction to obtaining the engine and an overview of what is included."
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=TjuK1ijv5KA",
"sSummary" : "The Default UI of Godot",
"sDetails" : "An overview of the Godot engine's UI layout and how they service the engine."
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=GEsYhhBlr1M",
"sSummary" : "The Godot Filesystem",
"sDetails" : "A video going over the filesystem dock in the UI"
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "http://docs.godotengine.org/en/3.1/getting_started/step_by_step/scenes_and_nodes.html",
"sSummary" : "Godot's Scenes and Nodes",
"sDetails" : "An additional explanation to how Godot's components arrange themselves to create the things that appear in a finished game."
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://docs.godotengine.org/en/3.1/getting_started/step_by_step/instancing.html",
"sSummary" : "Instancing Scenes in Godot",
"sDetails" : "Scenes can be rooms, entities, UI, or anything else you imagine, and are like templates from which you make \"instances\" of in your \"room\" or \"level\" scenes. The docs detail this further."
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=lpOP2tbl3zc",
"sSummary" : "Godot's Node Inspector",
"sDetails" : "Each node has properties that can be modified in the editor itself, rather than needing code. This video introduces you to it."
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=O5abE3aODxg",
"sSummary" : "What Are Signals?",
"sDetails" : "One of Godot's most prominent features is its signal system, a means of conveying events between nodes or scenes."
} );
dLinks.insert( { "sSection" : "prog-godot-engine-basics", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://docs.godotengine.org/en/3.1/getting_started/step_by_step/exporting.html",
"sSummary" : "Exporting Games in Godot",
"sDetails" : "A quick article that details how exporting is done. A recommended read to avoid getting confused by an interface that is less than straightforward."
} );
// ### prog-gdscript-overview ##################################################
dLinks.insert( { "sSection" : "prog-gdscript-overview", "sTag" : "Online Manual", "sTagColor" : "green",
"sURL" : "http://docs.godotengine.org/en/3.1/getting_started/scripting/gdscript/gdscript_basics.html#doc-gdscript",
"sSummary" : "Godot Docs: Scripting in GDScript",
"sDetails" : "GDScript is a language that feels similar to Python. It is a powerful way to edit not just your games but the editor itself, as well."
} );
dLinks.insert( { "sSection" : "prog-gdscript-overview", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=UcdwP1Q2UlU",
"sSummary" : "Introduction to GDScript for Beginners",
"sDetails" : "If you are new to code or want to easily transition to GDScript from another language, this video helps break down the basics."
} );
dLinks.insert( { "sSection" : "prog-gdscript-overview", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=KF0ixMxmW98",
"sSummary" : "The Search and Help System in Godot",
"sDetails" : "A crucial interface for looking up documentation for the engine's API and more."
} );
// ### writ-intro-articles #####################################################
dLinks.insert( { "sSection" : "writ-intro-articles", "sTag" : "Wiki", "sTagColor" : "yellow",
"sURL" : "https://tvtropes.org/pmwiki/pmwiki.php/SoYouWantTo/WriteAVideoGame",
"sSummary" : "TVTropes: So You Want to Write a Video Game?",
"sDetails" : "A good introductory article on writing stories for videogames."
} );
// ### writ-software ###########################################################
dLinks.insert( { "sSection" : "writ-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://www.libreoffice.org/",
"sSummary" : "LibreOffice",
"sDetails" : "Powerful, user-friendly document editing suite. Good for rich text documents, spreadsheets, presentations, databases, and more."
} );
// ### writ-story-fundamentals #################################################
dLinks.insert( { "sSection" : "writ-story-fundamentals", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://msu.edu/course/tc/842/SevenElements%20Story.htm",
"sSummary" : "7 Elements of Good Storytelling",
"sDetails" : "A quick and simple breakdown of the vital elements of a video game's story."
} );
// ### writ-worldbuilding-intro ################################################
dLinks.insert( { "sSection" : "writ-worldbuilding-intro", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://en.wikipedia.org/wiki/Worldbuilding",
"sSummary" : "Wikipedia: Worldbuilding",
"sDetails" : "A comprehensive overview; its definition, its history, and even some methods."
} );
// ### sd-intro-articles #######################################################
dLinks.insert( { "sSection" : "sd-intro-articles", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "https://www.soundonsound.com/techniques/music-sound-design-video-games",
"sSummary" : "Sound Design (and Music) for Video Games",
"sDetails" : "SoundOnSound's writeup on sound design gives us a window into the goals and workflow of a sound designer."
} );
// ### sd-software #############################################################
dLinks.insert( { "sSection" : "sd-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://www.audacityteam.org/",
"sSummary" : "Audacity",
"sDetails" : "Simplistic waveform-focused digital audio workstation with tools for directly editing sounds."
} );
// ### sd-pros #################################################################
dLinks.insert( { "sSection" : "sd-pros", "sTag" : "Channel", "sTagColor" : "yellow",
"sURL" : "https://www.youtube.com/user/MarshallsGuitarFun/videos",
"sSummary" : "Marshall McGee",
"sDetails" : "Marshall works as a professional sound designer for video game companies, and is one of the leading sources of expertise on YouTube."
} );
// ### sd-fundamentals-full ####################################################
dLinks.insert( { "sSection" : "sd-fundamentals-full", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/playlist?list=PLOMuI-j1vRxR9IDRAYPKEdHqq5sdOITJu",
"sSummary" : "Sound and Synth Basics",
"sDetails" : "Composing Gloves on Some of the basics of waveforms. Also, check out the Synth Design Wiki in Music Production for an even more accessible primer on audio fundamentals."
} );
// ### sd-recording-vocals #####################################################
dLinks.insert( { "sSection" : "sd-recording-vocals", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=-mVK5gTdH_U",
"sSummary" : "7 Vocal Recording Tips",
"sDetails" : "In the Mix describes important tips when recording vocals."
} );
// ### sd-processing-vocals ####################################################
dLinks.insert( { "sSection" : "sd-processing-vocals", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/playlist?list=PLOMuI-j1vRxR0GWyKDWFqONkX9RfUG5sG",
"sSummary" : "Musician's Guide to Vocal Processing",
"sDetails" : "Composing Gloves intended this playlist for musicians, but a lot of sound design concepts apply to the synthesis and recording of vocals.\
Check out the music production section for DAW knowledge."
} );
// ### mp-daws #################################################################
dLinks.insert( { "sSection" : "mp-daws", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://lmms.io",
"sSummary" : "LMMS",
"sDetails" : "Linux MultiMedia Studio; free digital audio workstation providing instruments, multiple tracks, channels, a piano roll, automation wave editors, and other essentials."
} );
// ### mp-music-theory-courses #################################################
dLinks.insert( { "sSection" : "mp-music-theory-courses", "sTag" : "Course", "sTagColor" : "blue",
"sURL" : "https://www.youtube.com/playlist?list=PLB585CE43B02669C3",
"sSummary" : "Andrew Furmanczyk: Music Theory",
"sDetails" : "YouTube user Lypur's full, free music theory course. Clefs, notes (pitch, length, dotted, triplet, etc), measures, notation, tempo, scales, key signatures, circle of fifths, intervals, etc."
} );
dLinks.insert( { "sSection" : "mp-music-theory-courses", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/playlist?list=PLOMuI-j1vRxSVE6HUVLyjSyL6qxa_TU2e",
"sSummary" : "MIDI Music Theory in the DAW",
"sDetails" : "Composing Gloves offers a way of teaching music theory directly in the DAW."
} );
// ### mp-musician-safety ######################################################
dLinks.insert( { "sSection" : "mp-musician-safety", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=7Yv2HmE-eG8",
"sSummary" : "How to Protect Your Ears",
"sDetails" : "Producers put their ears at risk when they work too loud and/or for too long. Ear damage is deceptively painless and irreversible."
} );
// ### mp-synthesis ############################################################
dLinks.insert( { "sSection" : "mp-synthesis", "sTag" : "Wiki", "sTagColor" : "yellow",
"sURL" : "http://synthesizer-design.wikia.com",
"sSummary" : "Synthesizer Design Wiki",
"sDetails" : "Learn how synthesis is done, as well as a few examples of recreating synthesizer sounds."
} );
// ### mp-vsts #################################################################
dLinks.insert( { "sSection" : "mp-vsts", "sTag" : "Website", "sTagColor" : "yellow",
"sURL" : "http://vst4free.com/",
"sSummary" : "VST4Free",
"sDetails" : "This website offers numerous freely downloadable VST plugins, including synths, samplers, drums, and more."
} );
// ### mp-tracking #############################################################
dLinks.insert( { "sSection" : "mp-tracking-advice", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=-mVK5gTdH_U",
"sSummary" : "7 Vocal Recording Tips",
"sDetails" : "In the Mix describes important tips when recording vocals."
} );
dLinks.insert( { "sSection" : "mp-tracking-advice", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=Mf6rjGY8os8",
"sSummary" : "Reducing the Noise of a Recording",
"sDetails" : "In the Mix gives advice on how to reduce the background noise of a recording."
} );
dLinks.insert( { "sSection" : "mp-tracking-advice", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=7_9RzwW2lPE",
"sSummary" : "Lining Up Vocals & Removing Silent Parts",
"sDetails" : "Making vocals fit in a mix can have overlap between the composition and mixing stages, but positioning vocals mostly lands this tutorial here."
} );
// ### mp-mixing ###############################################################
dLinks.insert( { "sSection" : "mp-mixing", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/playlist?list=PLOMuI-j1vRxSkIbh_ya0gPrXtp9L2IBbg",
"sSummary" : "Principles of Mixing",
"sDetails" : "Composing Gloves outlines a course on mixing your music and advice to consider."
} );
dLinks.insert( { "sSection" : "mp-mixing", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=bmFQ6nuywKQ",
"sSummary" : "General Vocal Mixing",
"sDetails" : "Composing Gloves on mixing vocals into music."
} );
dLinks.insert( { "sSection" : "mp-mixing", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=aT9vcjXlSTo",
"sSummary" : "De-Essing Vocals",
"sDetails" : "Vocals can sometimes produce sharp, sudden sounds, particularly with the S consonant. Composing Gloves explains how he gets that under control."
} );
dLinks.insert( { "sSection" : "mp-mixing", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=VcQybzAlcbo",
"sSummary" : "Achieving Thicker Vocals",
"sDetails" : "If vocals sound thin in a mix, there are techniques for making them fuller."
} );
// ### mp-mastering ############################################################
dLinks.insert( { "sSection" : "mp-mastering", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=uQ57_VLPDAA",
"sSummary" : "[FL Studio] How to Master Your Music",
"sDetails" : "In the Mix walks you through the mastering stage of music production."
} );
// ### mp-music-application ####################################################
dLinks.insert( { "sSection" : "mp-music-application", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=b0gvM4q2hdI",
"sSummary" : "Adaptive Soundtracks",
"sDetails" : "Games can often change its tone instantly, leaving you, a composer, in a unique position to compose for the medium. Game Maker's Toolkit describes how adaptive soundtracks work."
} );
// ### art-raster-software #####################################################
dLinks.insert( { "sSection" : "art-raster-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://www.gimp.org/",
"sSummary" : "GIMP",
"sDetails" : "GNU Image Manipulation Program. Basic brushes, selection tools, filters, effects, and more for image editing."
} );
dLinks.insert( { "sSection" : "art-raster-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://krita.org",
"sSummary" : "Krita",
"sDetails" : "Another free open source alternative to PhotoShop that specializes in illustrative artistry such as concept art and comic book art. It has some vector art support and animation features more robust than GIMP's."
} );
dLinks.insert( { "sSection" : "art-raster-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://wonderunit.com/storyboarder/",
"sSummary" : "Wonderunit's Storyboarder",
"sDetails" : "A simple tool for making storyboards."
} );
dLinks.insert( { "sSection" : "art-raster-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://www.aseprite.org/",
"sSummary" : "Aseprite ($)",
"sDetails" : "Great for pixel art and pixel animations."
} );
dLinks.insert( { "sSection" : "art-raster-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://pyxeledit.com",
"sSummary" : "PyxelEdit ($)",
"sDetails" : "Another pixel art tool specialized for tilesets."
} );
dLinks.insert( { "sSection" : "art-raster-software", "sTag" : "Software", "sTagColor" : "purple",
"sURL" : "https://www.adobe.com/products/photoshop.html",
"sSummary" : "Photoshop CC ($, SaaS)",
"sDetails" : "Photoshop is an industry standard software developed by Adobe as part of a service suite. You can also call Adobe directly to purchase an unsupported, outdated single-purchase version called Photoshop CS6."
} );
// ### art-vector-software
dLinks.insert( { "sSection" : "art-vector-software", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=pywbPQD9vYU",
"sSummary" : "Grease Pencil for Blender",
"sDetails" : "Blender's official Grease Pencil tool and how to create in its 3D-to-2D workflow."
} );
dLinks.insert( { "sSection" : "art-vector-software", "sTag" : "Channel", "sTagColor" : "yellow",
"sURL" : "https://vimeo.com/channels/greasepencil",
"sSummary" : "Grease Pencil Channel",
"sDetails" : "A complete toolset to make 2D animation inside Blender."
} );
// ### art-what-is #############################################################
// ### art-safety ##############################################################
dLinks.insert( { "sSection" : "art-safety", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://twitter.com/gcmulk/status/862478705616093184",
"sSummary" : "Injury Risk Reduction Exercises",
"sDetails" : "These exercises, illustrated by Twitter user gcmulk, are sourced from Summit Medical, McHesson health (2001), HEP2Go. Journals: Bandy and Irion (1997), Page (IJSPT, 2012)"
} );
dLinks.insert( { "sSection" : "art-safety", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=Ia9aUxTRaZA",
"sSummary" : "7 Stretches for Those Who Work at a PC",
"sDetails" : "Anyone who works for long periods of time at a computer should try to have a routine of exercises."
} );
dLinks.insert( { "sSection" : "art-safety", "sTag" : "Channel", "sTagColor" : "yellow",
"sURL" : "https://www.youtube.com/user/physicaltherapyvideo/videos",
"sSummary" : "Bob & Brad the Physical Therapists",
"sDetails" : "These professional gentlemen produce numerous videos on a regular basis about exercises you can perform to prevent injuries."
} );
dLinks.insert( { "sSection" : "art-safety", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=tU2X8tBnlJw",
"sSummary" : "Test if You Have Carpal Tunnel Syndrome",
"sDetails" : "A very common issue to have for artists who draw a lot."
} );
dLinks.insert( { "sSection" : "art-safety", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=JRqFY-epdNc",
"sSummary" : "Ulnar Nerve Stretches",
"sDetails" : "Your pinky finger or middle finger can hurt if this nerve is pinched. This video discusses treating it."
} );
dLinks.insert( { "sSection" : "art-safety", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=B-5c5yyySnU",
"sSummary" : "Carpal Tunnel Self-Treatment Program",
"sDetails" : "These exercises might be able to help treat mild carpal tunnel before it needs surgery."
} );
dLinks.insert( { "sSection" : "art-safety", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=sD1ypXcaKDY",
"sSummary" : "Stop Carpal Tunnel Syndrome at the Computer",
"sDetails" : "If you can't take a break from work (first of all, excuse me?!) these exercises can help alleviate your symptoms a bit."
} );
dLinks.insert( { "sSection" : "art-safety", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=z7mGU7877SE",
"sSummary" : "Post-Surgery Carpal Tunnel Exercises",
"sDetails" : "Some unfortunate folks have to get surgery. These exercises are for after the fact."
} );
// ### art-software-assets #####################################################
dLinks.insert( { "sSection" : "art-software-assets", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=0w845vAQoDY",
"sSummary" : "[PhotoShop] Building a Custom Brush",
"sDetails" : "How to make a custom brush in PhotoShop."
} );
dLinks.insert( { "sSection" : "art-software-assets", "sTag" : "Download", "sTagColor" : "purple",
"sURL" : "http://www.davidrevoy.com/article319/krita-brushkit-v8",
"sSummary" : "David Revoy's Brushkits",
"sDetails" : "David maintains and shares custom brush kits for Krita."
} );
// ### art-databases ###########################################################
dLinks.insert( { "sSection" : "art-databases", "sTag" : "Website", "sTagColor" : "yellow",
"sURL" : "https://ccsearch.creativecommons.org/",
"sSummary" : "CC Search",
"sDetails" : "A database of images licensed under creative commons. You should actually use this database first when looking for a reference."
} );
// ### art-fundamentals ########################################################
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Course", "sTagColor" : "blue",
"sURL" : "https://hubpages.com/art/how-to-draw-learn",
"sSummary" : "How to Draw: An /ic/ Guide",
"sDetails" : "A sort of overview course that goes through several art subjects."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Course", "sTagColor" : "blue",
"sURL" : "https://docs.google.com/document/d/1uwaXKU7ev6Tw_or__o8ARpUb6r2rCZYJGqwSFV9AD98",
"sSummary" : "/ic/'s Guide: Document Form",
"sDetails" : "Another massive course compiled by artists. (Heads up: the community itself is reportedly toxic)."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "http://www.handprint.com/LS/CVS/color.html",
"sSummary" : "handprint: color vision (expert)",
"sDetails" : "An incredibly detailed and scientific overview of the physical properties of light, color, and the ways we perceive it."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "http://www.handprint.com/HP/WCL/tech10.html",
"sSummary" : "handprint: perspective (expert)",
"sDetails" : "handprint's lengthy and detailed article on perspective."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Article", "sTagColor" : "orange",
"sURL" : "http://www.handprint.com/HP/WCL/tech11.html",
"sSummary" : "handprint: format proportions (expert)",
"sDetails" : "handprint's detailed article on framing art."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=v8jScQhDcNw",
"sSummary" : "How to Pick Colors",
"sDetails" : "Arucelli advises on color theory."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://incantata.deviantart.com/journal/Use-of-the-colour-wheel-for-lighting-and-shading-601923810",
"sSummary" : "Adjusting Hues During Shading",
"sDetails" : "How to select more dynamic color schemes that aren't monochrome."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Course", "sTagColor" : "blue",
"sURL" : "https://www.youtube.com/playlist?list=PLgKJMTFp_25iQVZ6ItpZKTSN9Yo44YSTs",
"sSummary" : "Understanding Perspective",
"sDetails" : "Modern Day James explains details about understanding perspective."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=DaG-cBidCBw",
"sSummary" : "Emulating Poses in Camera Positions",
"sDetails" : "A slightly advanced video involving perspective grids and character poses."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=D0g2MMsvqEM",
"sSummary" : "Posing in Perspective",
"sDetails" : "Modern Day James's video on posing in perspective."
} );
dLinks.insert( { "sSection" : "art-fundamentals", "sTag" : "Playlist", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/playlist?list=PLV2X3tgajVlHkH3FHxm3rLZWqScFTRhtv",
"sSummary" : "Foundations of Light and Shdaow",
"sDetails" : "Sycra's series that covers basic lighting knowledge."
} );
// ### art-human-anatomy #######################################################
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Online Manual", "sTagColor" : "green",
"sURL" : "https://archive.org/stream/pdfy-72f-FzW7wYN_r0ny/Bridgman%20-%20Complete%20Guide%20to%20Drawing%20from%20Life#page/n1",
"sSummary" : "Complete Guide: Drawing from Life",
"sDetails" : "Bridgman's full (I think) book on drawing human anatomy and clothing, focusing on deriving from details about human anatomy."
} );
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Website", "sTagColor" : "yellow",
"sURL" : "http://justsketch.me/",
"sSummary" : "JustSketchMe Posing Tool",
"sDetails" : "Interactive 3D model you can pose for figure drawing practice."
} );
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://twitter.com/dreamfactory00/status/792347853427384321",
"sSummary" : "dreamfactory00's Prototyping Example",
"sDetails" : "Starting with a pose prototype, then a skeletal figure, then muscle, then skin/finished outline."
} );
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://twitter.com/ttguweiz/status/772102133252444160",
"sSummary" : "@ttguweiz's Poses",
"sDetails" : "A demonstration of poses that also includes a prototyping technique."
} );
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Website", "sTagColor" : "yellow",
"sURL" : "http://www.posemaniacs.com/",
"sSummary" : "Posemaniacs (Flash)",
"sDetails" : "3D Models you can rotate for references."
} );
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://pbs.twimg.com/media/C8LXujTU0AYOLZ_.jpg:large",
"sSummary" : "Various Athletic Body Builds",
"sDetails" : "Athletes develop muscles depending on their specialization."
} );
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://imgur.com/a/zla9O",
"sSummary" : "Artist's Poses",
"sDetails" : "An artist's sketches of human poses. Source undisclosed."
} );
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://twitter.com/arucelli/status/814154579650744320",
"sSummary" : "Arucelli on human proportions",
"sDetails" : "A few notes from Arucelli on proportions for humans."
} );
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://twitter.com/PaintingColleg/status/947049918522302464",
"sSummary" : "Collection of Hand Poses",
"sDetails" : "@PaintingColleg provides a photo containing tons of hand poses from various angles."
} );
// Coloring and Misc
dLinks.insert( { "sSection" : "art-human-anatomy", "sTag" : "Graphic", "sTagColor" : "red",
"sURL" : "https://twitter.com/kawanocy/status/756849945865367552",
"sSummary" : "@kawanocy on Coloring Skin and Hair/Fur",
"sDetails" : "How kawanocy colors, shades, and highlights skin, step by step."
} );
// ### art-human-skeleton ######################################################
dLinks.insert( { "sSection" : "art-human-skeleton", "sTag" : "Video", "sTagColor" : "red",
"sURL" : "https://www.youtube.com/watch?v=ERc2xnQpCR4",
"sSummary" : "The human skull",
"sDetails" : "Modern Day James covers the skull of the head"