• Stars
    star
    108
  • Rank 321,259 (Top 7 %)
  • Language
    Python
  • Created about 9 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Blender addon that imports Quake BSP files

Quake 1 BSP Importer for Blender

Donate

An add-on for Blender that makes it possible to import Quake BSP files, including textures (which are stored in the BSP) as materials. It works with Blender 2.80 and there is an older release for the Blender 2.7x series, which can be downloaded by clicking here.

Imported level (apdm3)

Installation

  1. Download the latest release from GitHub by clicking here.
  2. In Blender, open Preferences (Edit > Preferences) and switch to the Add-ons section.
  3. Select 'Install Add-on from file...' and select the file that you downloaded.
  4. Search for the add-on in the list (enter 'bsp' to quickly find it) and enable it.
  5. Save the preferences if you would like the script to always be enabled.

Usage

Once the addon has been installed, you will be able to import Quake bsp files from File > Import > Quake BSP (.bsp). Selecting this option will open the file browser and allow you to select a file to load. Before loading the file, you can tweak some options to change how the BSP will be imported into Blender.

Scale (default: 0.03125)

Changes the size of the imported geometry. The size of a unit in Quake is not the same as in Blender. Scale is set so that 32 units in Quake is 1m in Blender, so setting scale to 1 will make everything huge.

Create Materials (default: On)

Enable or Disable the creation of materials and storing of texture data in the .blend file.

Remove Hidden (default: On)

There are some objects in a typical Quake BSP, such as triggers, that are hidden in the game, but included in the BSP. Disable this to import these objects too. Importing hidden objects can make it hard to see all the details in the BSP.

Light Scale (default: 1.0)

Scale the brightness of imported lights. Useful if the geometry scale is different from the default setting, or simply to brighten or darken the lighting.

Worldspawn Only (default: Off)

Worldspawn is the name given to the first model inside a BSP file. It represents the static level geometry. Subseqent models in the BSP are dynamic, such as doors, platforms and triggers. Enabling this will only import this first model.

Create Lights (default: On)

Import any light entity data in the BSP as lights in Blender. This works quite well for older maps, but modern maps often have static light data stripped from the BSP, since it doesn't ever change, so the only type of light data that will be imported is for lights that are animated or have an ambient effect.

Create Cameras (default: On)

Import info_intermission and info_player_start as cameras in Blender. Created cameras will face the same direction as in the BSP file, and the camera field of view will be set to match the default 90 degree FOV of Quake.

Create Entities (default: Off)

Import certain entity types as empties in Blender. By default, this will only import monsters, weapons and items. This is useful if you have imported a mesh you would like to place in the level at the same location as an entity in the game.

Import All (default: Off)

Rather than just importing a few entity types, this will import all entities contained in the BSP as empties. Useful if an entity you need the location of is not included by the default Create Entities option.

Collections

When a BSP is imported into Blender, the level geometry will be put in a collection named after the file. Entities and lights will also be placed into collections. If the map name is e1m1.bsp, the resulting collections will look like this:

  • 'e1m1' - level geometry
  • 'e1m1_entities' - entities
  • 'e1m1_lights' - lights

View Settings

Once a BSP has been imported, you might want to tweak some viewport settings to better see the geometry. I recommend using the Solid/Workbench display mode and adjusting the following:

  • Color: Texture
  • Backface Culling: On
  • Specular Lighting: Off

As of version 0.0.9, the importer will attempt to set up any active 3d views to use this kind of shading, saving you the hassle. Disabling Overlays is also recommended.

More Repositories

1

blender_vertex_color_master

Blender addon for working more precisely with vertex colours.
Python
359
star
2

blender_vhacd

Blender 2.80 add-on that enables the use of V-HACD inside Blender to generate accurate convex hulls quickly.
Python
109
star
3

mp4_to_mp3

Small Python script for converting mp4 video to mp3 audio. Requires mplayer and lame to actually do the hard work.
Python
92
star
4

blender_io_mesh_qmap

Quake .map to Blender importer
Python
36
star
5

quake_web_tools

Tools for viewing Quake 1 file formats on the web
JavaScript
15
star
6

canvas_danmaku

Danmaku (bullet hell) style shooting game using HTML5 canvas and written in Javascript
JavaScript
11
star
7

blender_ue4_export_tools

A script for Blender to assist with exporting objects and scenes to Unreal Engine 4.
Python
8
star
8

ergamigo

Utility for sending data from a Concept 2 rower to a connected client via websockets.
Python
6
star
9

godot_UnrealCollisionImporter

An import script that imports manually created collision data set up for Unreal into Godot
GDScript
5
star
10

blender_mesh_masked_smooth_normals

A Blender script for smoothing normals based on selection
Python
4
star
11

playdate_pulse

Clear each stage within a strict timelimit
Lua
4
star
12

blender_addon_tutorial

Code for article appearing in Wireframe magazine
Python
4
star
13

canvas_tetris

A clone of Gameboy Tetris using HTML5 canvas written in javascript.
JavaScript
4
star
14

godot_BaseProject3d

Basic 3d project for getting started in Godot
GDScript
2
star
15

godot_MagnetMechs

Mech game for Mech Jam 2 on itch.io
GDScript
2
star
16

GMSyntax

GameMonkey Syntax for Sublime Text
2
star
17

godot_santa

Port of old canvas game to Godot
GDScript
1
star
18

BulletSponge

Bullet hell shooter for Playdate where the player must soak up bullets to survive
Lua
1
star
19

Unity_FPS_Experiments

Unity project for simple Quake-style FPS with custom player controller
C#
1
star
20

Unity_MeshGeneration

Simple test of procedural mesh generation in Unity
C
1
star