The blog is being migrated and merged with multiple Imphenzia blogs so the format and content will be inconsistent for a while.

Video: Pitch Shifting and Microphone Specs

The other day I broke a laptop monitor in half and I recorded it using four very different microphones with different specifications. I recorded the sounds with a sampling rate of 192 kHz and loaded the sounds into Izotope RX5 to show the spectrogram and pitch down the sounds two octaves. This video demonstrates how different the sounds are when pitched down since some of the microphones capture audio well beyond what the human ear can hear - yet when you pitch the sound down those inaudible frequencies are brought into our range of hearing:

Microphones Used:
Sanken CO-100K (20 - 100'000 Hz)
Sennheiser MKH 8040 (30 - 50'000 Hz)
Rode NTG3 (40 - 20'000 Hz)
Schoeps CCM41 (40 - 20'000 Hz)

Sound Devices 788T

Software Used:
Izotope RX5

How I arranged the trance track Spirit Within You

Following some very positive feedback on the tutorial video on how I create trance music I also decided to dedicate today to make another tutorial of how I arranged the entire track Spirit Within You.

This video takes a detailed look at all the sections that form the track - such as the intro, the build up, the breakdown, the culmination, and the outro. It also explains how various instruments are introduced and modified during various stages of the track.

I am, by no means, saying that this is how you must make trance music - it's just at peek into how I arrange most of my tracks. When I started out making music in the 90s I found no tutorials like this and I'm hoping that this video can help some of you that are interested in making music.

Right then, here is the tutorial of how to arrange a trance song / track:

As usual, I use Cubase 5 and my trusted VST instruments Nexus2, VanGuard, and Sylenth1 - but this arrangement technique can be applied regardless of what software you use.

If this tutorial helps you out - I'd be happy to hear about it in the comments field =)

Good luck and happy music making!

How to make trance music tutorial

Today I decided to create a tutorial based on my latest trance track "Spirit Within You". It's a detailed look at a section of 15 measures of the track where I go through each and every instrument, what notes and chords are played, which presets are used, what VST instrument was used, etc. This should hopefully give you the foundation of percussion, bassline, melody,  filling effect - but it won't teach you how to arrange a full length track - that will come in another tutorial.

Have a look at the tutorial

What's in the video?

The video describes the following elements:

  • Percussion (drums) - kick, closed hihat, open hihat, claps, cymbals

  • First bassline (rapid 1/16 notes)

  • Second bassline  (offbeat 1/8 notes)

  • Cluster of 5 simultaneous leads for extreme atmosphere

  • Two trance gates for an even fuller effect

  • Pads for more euphoria

  • And a classic trance piano with delay end reverb

First the video lets you listen to the end result. Then I solo each instrument and describe what notes were played. You can also see exactly which presets are used in Nexus2, VanGuard, and Sylenth1. All presets, more or less, use the default settings and the default delay / reverb effects. Filter cutoff frequency is altered on a few instruments to create that classic morphing or transforming sound commonly found in trance. No additional, external, or invisible effects are applied.

In this video tutorial I use Cubase 5 as a sequencer - but the technique can be applied to any sequencer and VST instruments.

Since this video focuses on a cropped out section of the track, I plan to make another video showing how the track is arranged in terms of introducing various instruments, the intro, the chorus, the breakdown, the outro, etc.

If you like this video and, of course, if you like my music - please consider supporting Imphenzia by buying one of my albums in the album section (or on iTunes and other digital stores) - you can also gain Full Access to all Imphenzia tracks for high quality 320kbps MP3 and lossless FLAC files.

Virtual Instruments (VSTi) used

  • Groove Agent ONE (Cubase 5 drum machine)

  • ReFX Nexus2

  • ReFX VanGuard

  • LennarDigital Sylenth1

Presets used

All the presets are available in the retail version of each VSTi without the need for any expansions. The exception is the percussion since I just use various percussion samples.

ReFX Nexus2

  • Bass | BA Trancebass 19

  • Bass | Lazy Bass

  • Single Layer Leads | LD Detuned Lead 1

  • Epic Pads | PD Floating Away (with Trance Gate "TG" effect enabled)

  • Epic Pads | PD Tranceiver

  • Piano | PN Trancepiano

ReFX VanGuard

  • LD Corsten 01 MS

  • ARP Smuggler

LennarDigital Sylenth1

  • Bank 1 | LD Follow

  • Bank 2 | LD Rollback

  • Bank 1 | GAT Trancentral

Groove Agent ONE

  • Various drum samples accumulated over the years

Creating a low poly space ship in 3DS Max 2012

I decided to learn a bit more about modelling and texture mapping low poly 3D objects for games. My object of choice was a space ship and there are many skilled people out there who can do this ten times better than me, but at the same time I wanted to share my experience because you never know, someone might find it helpful =)

[caption id="attachment_313" align="alignright" width="620" caption="Figure 1: Render of final space ship"]Render of final space ship[/caption]

The space ship pictured above (Figure 1) is a render of my final object. It consists of 252 faces (polygons) and 249 vertices (intersecting points.) Additional detail is added by also creating a slightly higher detailed version (1900 faces and 2125 vertices) used to render a "normal map" which is effectively a bump map adding extra detail to the low polygon version. I'll explain how I did that as well.

Before getting started I'd also like to point out that this is not a full detailed click-by-click tutorial - it's rather a summary of how I went about modeling and texture mapping the object. It wasn't my intention to create a tutorial, it's just something I decided to do afterwards to document the major steps.

Starting with a box and using symmetry

I started by creating  a standard primitive Box object which I then converted to an Editable Poly. You can do this by right clicking on the box then selecting Convert To | Convert To Editable Poly.

To model the basic shape I changed selection method to "Polygon" so I could select the faces of the Editable Poly and then extrude and bevel them roughly shaping one side of a space ship. After some trial and error by repeatedly extruding faces and moving vertices I ended up with the basic shape of a space ship (Figure 2.)

[caption id="attachment_315" align="alignright" width="620" caption="Figure 2: Left side modeled by extruding faces / polygons of a primitive box"][/caption]

I realize that Figure 2 shows the result of many iterations of extruding and modifying the object but I don't have saved file from any previous version so I can't show the progress up until this point. If you are interested in a detailed tutorial - please leave a comment to this post and I'll make a detailed tutorial if there are enough requests =)

It's difficult to see what the shape will be by just looking at half a ship so I added the "Symmetry" modifier to mirror the X-axis of my ship. When you add the modifier you can move the gizmo to say where the mirror center should be and I modeled my ship so that the center of the ship is at the X-coordinate 0. Since the very center of my ship is at x = 0, I moved the symmetry gizmo to x = 0 which then displays the ship nicely (Figure 3) with both sides yet allowing you to work only on one side.

[caption id="attachment_318" align="alignright" width="620" caption="Figure 3: Symmetry modifier added to mirror X axis"][/caption]

[caption id="attachment_324" align="alignright" width="183" caption="Figure 4: Show End Result"][/caption]

When using the symmetry modifier it is important that you click "Show end result on/off toggle" (see Figure 4) on the Editable Poly to make sure the mirrored version of the ship is visible while modifying the Editable Poly. This is necessary since the symmetry modifier is above the Editable Poly in the modifier stack.

After some additional modeling, still only using extrude and bevel on faces, I ended up with a space ship shape that I was happy with (see Figure 5 below.)

[caption id="attachment_325" align="aligncenter" width="620" caption="Figure 5: Final Low Poly model"][/caption]

UVW Unwrapping and Texture Mapping

It's now time to paint the surfaces of the space ship (i.e. texture mapping) and that is done by first "unwrapping" the texture coordinates for the object. This is necessary so various surfaces of the space ship is represented by chunks of faces on a template image which can then be used as a reference to paint surfaces for the space ship, e.g. metal plates, dirt, stickers, and so forth.

The first thing I did was apply the "Unwrap UVW" modifier to my Editable Poly. Open the UV Editor by clicking the button "Open UV Editor...". The editor won't show anything useful to begin with, but click on the "Polygon" selector (see 1. in Figure 6) and then press Control + A to select all polygons.

[caption id="attachment_327" align="aligncenter" width="620" caption="Figure 6 - Unwrap UVW Editor"][/caption]

[caption id="attachment_328" align="alignright" width="300" caption="Figure 7: Flatten Mapping"][/caption]

When you have all the polygon selected (so they are highlighted in red) - go to Mapping | Flatten Mapping and set Face Angle Threshold to 60 and click OK. (Values between 45 and 60 degrees usually work where 45 will create more separate surfaces and and 60 will create fewer sets with larger chunks of polygons.)

This splits up all the faces into chunks (Figure 7) which are then distributed within a texture map square. Even though 3DS Max did a fairly good job at this we can't start painting on these just yet because there are some overlapping faces and they are not quite grouped the way we want them. We'll get back to that in a minute.

Checker Material

[caption id="attachment_331" align="alignright" width="290" caption="Figure 8: Checker Material"][/caption]

To make it easier to see what's going on I created a checker material in the 3DS Max material editor. In short, I did this by changing the Diffuse map of a material to "Checker" and setting the tiling values for U and V to 25 (see 1. in Figure 8) originally the value is 1 which would only create 4 squares in the checker material.)

Also click to "Show Shaded Material in Viewport" (see 2. in Figure 8.) This enables you to see how the texture map is applied to the object in the viewport rather than having to render the scene every time.

Finally, don't forget to assign the material to your Editable Poly (see 3. in Figure 8.) Once I applied the checker material onto my space ship it looked like as seen in Figure 9.

[caption id="attachment_332" align="aligncenter" width="620" caption="Figure 9: Checker Material on Space Ship"][/caption]

The great thing about the checker material is that you'll be able to see where texture will be stretched or compressed too much. You can see that the squares on the front of the wing are larger than on other parts of the space ship so this is something I had to address. Just by doing the Flatten Mapping 3DS Max has already performed a great job to split up the surfaces and as you can see the checker pattern flows quite nicely around the entire spaceship.

Break and Stitch the UV Map

When painting texture maps it is much simpler to have certain faces grouped together. A good example of this is the air intake of the engine (why a space ship have air intakes I don't know - but mine does anyway =). As you can see in Figure 10 I selected the polygons that form the inside of the air intake. I made the selection on the actual 3D object while having the UV Editor open because most of the time you won't be able to identify which polygons it is in the UV Editor. This is also why this needs to be performed - how would you know where to paint certain things if you don't know what part of the ship it is?

As I selected the polygons I then clicked Break (see 2. in Figure 10.) In this particular case it isn't actually necessary because all the polygons are already detached but often you'll find that the polygons you want are attached to other parts of the object. Make a habit of breaking the polygons before you stitch them together.

[caption id="attachment_335" align="aligncenter" width="620" caption="Figure 10: Break Polygons"][/caption]

Once detached, I moved one of the polygons to the side. Change the selection to Edge (see 1. in Figure 11) and select one of the edges of the polygon. When you select the edge, look among the other polygons and see if there is a blue edge on another polygon that you previously detached. If yes (as seen in figure 11 showing the blue edge on a polygon in the top right corner) these need to be stitched together by clicking on the blue stitch button (see 3. in Figure 11)

[caption id="attachment_336" align="aligncenter" width="620" caption="Figure 11: Stitch UV"][/caption]

Repeat the stitching process until you've stitched all the faces (in my case I stiched all the faces in the air intake. It was easy for me to figure out when I had stitched all the polygons together as you can see when I selected the bottom edge (see 1. in Figure 12) the top edge (see 2. in Figure 12) turned blue.

[caption id="attachment_337" align="aligncenter" width="620" caption="Figure 12: Stitch Complete"][/caption]

This is a slow and painful process and I performed it on both air intakes, the insides of the jet exhausts, the fins, the wings, and the cockpit.

When I was finally done, I rearranged all the polygons into the allocated square space representing the texture map. It's important to minimize the amount of unused space as you want to make sure the highest possible resolution is used for each part of the texture. There are 3rd Party helping tools, such as "Unfold 3D" and "UV Packer", that will simplify the packing process.

[caption id="attachment_339" align="alignright" width="300" caption="Figure 13: UVW Template"][/caption]

You should also go to the Display menu in the UV Editor and enable "Show Edge Distortion" every now and then. If you see any red or yellow lines it means that the edge is much shorter in the UV coordinates compared to the actual edge on your 3D object. Eliminate these red and yellow lines by moving the vertices until the lines turn green. If you don't do this, you may end up having distorted textures.

When done click the Tools menu in the UV Editor and select "Render UVW Template...".  I ended up with a template as seen in Figure 13.

At this point I knew what each group of polygons were located on the space ship.

Adding details to the low poly object using a normal map

There is a trick to make a low polygon object look like it's made out of many more polygons than it actually is. This is done by making a high detailed version of the object and then rendering it to a "normal" texture map which is then applied as a bump map to the low poly object.

To do this, I duplicated my space ship into a new object that I named "HighPoly". I hid my low poly space ship not to get confused as they still occupied the same space. I then continued the process of extruding, beveling, and chamfering parts of the ship to add details. Figure 13 shows what I ended up with.

[caption id="attachment_340" align="aligncenter" width="620" caption="Figure 14: High Poly Space Ship"][/caption]

Note: My "High Poly" space ship is still only 1900 polygons (compared to 252 polygons on my low poly version.) You can go absolutely crazy here with tens or hundreds of thousands of polygons - it won't affect the performance in the game and you can add a lot of details this way.

Once I was happy with my detailed version of the ship it was time to "Render To Texture" to create the normal map. I found a good YouTube tutorial for this so check it out and follow the steps to render your high poly version into a normal bump map:

[caption id="attachment_343" align="alignright" width="300" caption="Figure 15: Normal Map"][/caption]

The Normal Map I ended up with can be seen in Figure 15. I use a texture size of 1024x1024 pixels for all my texture maps. We'll apply this normal map to the low poly object in a minute.

Painting Diffuse and Specular Texture Maps

[caption id="attachment_345" align="alignright" width="300" caption="Figure 16: Diffuse Map"][/caption]

In Photoshop I loaded the UVW Template previously created (See Figure 13 earlier in this post.) I found some free textures (on CGTextures and Deviantart) that I used as a base for the Diffuse map (the actual texture of the space ship) and Specular map (shininess of the surfaces on the space ship.)

On the diffuse map (see Figure 16) I used grey metal textures as a base and I then added some shading, dirt, scratches, rivets, armor plate edges, text, and paint a simple paint job. The diffuse map is where you generally paint everything that you want to appear on your object.

[caption id="attachment_347" align="alignright" width="300" caption="Figure 17: Specular Map"][/caption]

I then also created a specular map (see Figure 17.) The purpose of the specular map is to describe how shiny certain areas of the space ship should be. Black is no shininess at all and white is as shiny as it can be. You can of course have shades of grey in between.

I used scratched metal surfaces covering most parts of the ship. The engines I made less shiny and also the cockpit as it reflected too much light for my liking (making it pure white with its flat surfaces.) I also made the rivets more shiny to make them standout somewhat.

[caption id="attachment_348" align="alignright" width="323" caption="Figure 18: Material"][/caption]

Creating the material

Now we have the diffuse map (Figure 16), the specular map (Figure 17), and the normal map (Figure 15.) Time to create the material. In the Material Editor I simply loaded the three images into the diffuse color, specular level, and bump slots as seen in Figure 18. I raised the Bump value from the original 30 to a value of 100.

Just to clarify - the material is assigned to the Low Poly object. The High Poly object can be hidden or deleted.

Final Render

This is what the final rendering of the object looks like:

Render of final space ship...and the specular shininess can best be previewed in this video clip:

The music in the video is available for licensing on my Imphenzia Soundtrack page. If you are here because you are making a space related game - you may also want to look at my site www.spacebox4096.com for space images with extremely high resolution to use as environment maps.

I hope you find some use out of this post - I'd be very happy if you drop a comment if this helped you out in any way =)

Thanks to the members of Maxforums.org for helping me with some useful tips, feedback, and links to tutorials.

Create seamless loops for game music

Making seamless loops is an essential part in creating music suitable for games. Loops will keep the distribution size of games to a minimum and it also makes the audio cheaper to license which is crucial for smaller indie game developers.

Although I've been making music as the trance artist "Imphenzia" for 14 years, which is starting to sound like a very long time also making me sound old, I've only been releasing music for games during the past 3-4 years as "Imphenzia Soundtrack." I mention this for no apparent reason at all, so lets move on.

I've created a video tutorial of how I go about when creating a seamless loop. In this case it's an orchestral movie-style piece of music that will be added to my library of non-exclusive music. I use Steinberg Cubase 5.5 and Sony Sound Forge 10 to create the loop but you will probably be able to replicate the steps in your sequencer and audio editor of choice.

Time for the tutorial - have a look at it and don't forget to watch it in 720p so you can read the options better.

I hope the tutorial helps you to create perfect seamless loops of your music. Some of the important things to stress are:

  • Repeat the music you want to loop three times in your sequencer, exactly 3 times down to the measure. Why? It's because you want to ensure a good loop including any trailing audio at the end of the music piece, it could be decay, reverb trails, and echo.

  • Export the audio to a Wav file (or a format of choice) and load it into a good sound editor.

  • Crop out the center third of the music, use sample precision to do this.

  • Remove any clicks by ensuring that the audio file starts and stops on 0 dB exactly (or infinitely low as Sound Forge describes it.) This is performed by fading in the start and fading out the end by only a few samples, 20-100 samples is usually suitable.

In the video tutorial I also mention a Javascript that I've created for Sound Forge that will perform the selection of the center third, cropping, and fading the ends to ensure a good loop point. This particular Javascript will be the topic of my next blog post so do come back soon.

About the new album release "Duplicate My Soul"

Duplicate My Soul - Album Cover
Another two years have past since Illusion was released and I was pleased, and somewhat surprised, as I unexpectedly decided to release "Duplicate My Soul". I should probably follow traditional marketing strategies and build up a hype well ahead of an album being released but when I have my creative periods I spontaneously do these things. At the same time I'm quite happy not to follow all the rules and I'd rather take the opportunity and take advantage when the spontaneous outbursts pay me a visit.

On the 19th of March 2010 I started working on a new track under the project name "Logic Surface" (I always have random names of my tracks until they are finished and I can name them appropriately depending on their character). I nearly completed the track on the 19th but on saturday 20th March I also managed to complete it fairly early in the day. As I named the track "False Awakening" I started to add tracks released after Illusion into my winamp playlist and as the total duration grew to 1 hour, 11 minutes, and 51 seconds (including 4 bonus tracks) it hit me - it's time for my next album to be released! By the evening on the 20th "Duplicate My Soul" was released and available for anyone to get as an mp3-album or as a physical album with artwork and the complete works.

So, in addition to creating "False Awakening" what did I do for this release during the 20th March?

  • Compiled the final track listing

  • Created the cover artwork for the jewel case and disc label (using a photoshop tutorial on the internet)

  • Changed ID-tags for all tracks included on album and re-encoded them in MP3, OGG, ACC, and FLAC

  • Uploaded all the re-encoded and ID-tagged tracks to imphenzia.com

  • Added album (artwork, zip-archive for mp3-purchases, and individual tracks) to imphenzia.com

  • Updated the web site to include the latest album

  • Created promo video for album demonstrating how I created the artwork (+ upload to youtube)

  • Sent out an e-mail to my mailing list regarding the new album release

  • Updated common social networking sites with album release (twitter, facebook, youtube, etc.)

  • Over all I'm very pleased with achieving all of this in one single day from spawning the idea of releasing an album to actually releasing it.

    What to expect from Duplicate My Soul
    Most of the tracks are of true Imphenzia character with a melodic and uplifting sound. The main 9 tracks are all trance styled with what most probably would refer to as a classic (or retro) styled Trance which was more popular in the late 90s. I haven't been on for following trends or releasing what is currently hot or not, I'd rather create the type of music I love as there are still quite a few out there who appreciate this style. The one exception is probably track number 9 named "Vapour Trail" which was a very experimental track incidentally enough also casually released in silence on imphenzia.com in retrospect 2 years after it was created =) Following the 9 tracks of trance is the first bonus track "Theme of Decimation X" which was originally created for the intense retro shooter game "Decimation X" by Xona games. It fits the over all mood and is very much in line with my normal music that it qualifies as a bonus track on the album. The last three bonus tracks are chilled out downtempo edits of some of the tracks featured on the album.

    The name of the album comes from the first track on the album with the same name. The name was selected for two reasons. First of all it is a tribute to my first child (a son) so it is in a sense duplicating my soul, and secondly because the track and all the music of Imphenzia really does reflect my soul and the music I create.

    For those of you who are curious of what type of equipment I used to create the music on this album I use the following:
    Quad Core Intel 2.4 CPU with 4GB Ram running Windows 7 x64
    Master keyboard:
    Roland FP-7 (88 keys hammer action) and an Evolution MK-226C
    Sound card:
    Motherboard's own soundcard believe it or not (with ASIO4ALL drivers)
    Steinberg Cubase 5
    VST instruments:
    Mainly native Cubase instruments, reFX Nexus2 (plus expansion packs) and reFX VanGuard (plus expansion packs)

    Finishing off this post, here is the promo video for the track featuring clips from the first four tracks and a quick preview of how the artwork was created:

    I hope you enjoy this release!