Difference between revisions of "1K Intro"

From SizeCoding
Jump to: navigation, search
Line 1: Line 1:
 
== Introduction ==
 
== Introduction ==
This category is dedicated to 1K Intros for Windows 32
+
This category is dedicated to 1K Intros for Windows 32.
  
=== Setup ===
+
Windows 1K Intros can be setup in C or Aseembler, or a combination of both, with only the few windows calls that are used being linked in.
TBA
+
In general writing everything in assembler should give you a little more freedom in pushing/popping your function arguments but in th past quality intros have been written in both languages.
  
=== Graphics ===
+
Graphics are usualy done using OpenGL+GLSL, but there are 1K intros out there that have used D3D instead.
* Setting up a OpenGL Window
+
 
 +
=== Setup (OpenGL) ===
 +
* ChangeDisplaySettings(&screenSettings, CDS_FULLSCREEN) - Initialise fullscreen view
 +
* CreateWindow((LPCSTR)0xC018, 0, WS_POPUP | WS_VISIBLE | WS_MAXIMIZE, 0, 0, 0, 0, 0, 0, 0, 0) - Setting up a Maximised Window
 +
* ShowCursor(NULL) - Hide mousecursor (usually required by compo rules
 +
* GetDC() - Get DeviceContext handle
 +
* ChoosePixelFormat(hDC, &pfd) - Set pixelformat describer by pfd to DeviceContext handle
 +
* wglCreateContext(hDC) - Create OpenGL context
 
* Initialising GLSL Shader
 
* Initialising GLSL Shader
*
+
* Mainloop that
 +
 
 +
=== Graphics / effect ===
 +
* Passed time via glColor (no uniforms used)
 +
* GLSL Shadercode
  
 
=== Sound ===
 
=== Sound ===
* Win32 MIDI
+
* Win32 Single Note MIDI  
 +
* Win32 MIDI player
 +
* Bytebeat softsynth
 
* Bytebeat softsynth  
 
* Bytebeat softsynth  
  
 
=== Compression ===
 
=== Compression ===
 +
* Microsoft Cabinet decmpression
 
* Crinkler
 
* Crinkler
* Microsoft CAB/LZ Compression
 
  
 
== Frameworks ==
 
== Frameworks ==

Revision as of 01:26, 12 April 2024

Introduction

This category is dedicated to 1K Intros for Windows 32.

Windows 1K Intros can be setup in C or Aseembler, or a combination of both, with only the few windows calls that are used being linked in. In general writing everything in assembler should give you a little more freedom in pushing/popping your function arguments but in th past quality intros have been written in both languages.

Graphics are usualy done using OpenGL+GLSL, but there are 1K intros out there that have used D3D instead.

Setup (OpenGL)

  • ChangeDisplaySettings(&screenSettings, CDS_FULLSCREEN) - Initialise fullscreen view
  • CreateWindow((LPCSTR)0xC018, 0, WS_POPUP | WS_VISIBLE | WS_MAXIMIZE, 0, 0, 0, 0, 0, 0, 0, 0) - Setting up a Maximised Window
  • ShowCursor(NULL) - Hide mousecursor (usually required by compo rules
  • GetDC() - Get DeviceContext handle
  • ChoosePixelFormat(hDC, &pfd) - Set pixelformat describer by pfd to DeviceContext handle
  • wglCreateContext(hDC) - Create OpenGL context
  • Initialising GLSL Shader
  • Mainloop that

Graphics / effect

  • Passed time via glColor (no uniforms used)
  • GLSL Shadercode

Sound

  • Win32 Single Note MIDI
  • Win32 MIDI player
  • Bytebeat softsynth
  • Bytebeat softsynth

Compression

  • Microsoft Cabinet decmpression
  • Crinkler

Frameworks

1K intros for Windows