- I use MS C# VisualStudio 2010 Express and 4.0 .NET framework
That should be no problem. The only reason I keep VST.NET at .NET 2.0 is not to force users of the software (plugins/hosts) you write, to upgrade to a higher version of .NET. Currently I dont need features from the newer .NET version, so we're still on .NET
- Is this order alright?
Yes, taking a sample or using the VS project templates as a starting point is a good way to start. I fully realize that in time you might develop your own style and architecture, but as a starting point its fine.
Know, however, that the samples are not meant as production code and ready to ship! The samples only demo how to setup/interact with VST.NET, nothing else. The Delay sample has a small DSP component but other samples do not (I'm know nothing about DSP). I would
suggest you look at the MidiNoteSampler, it has an audio and midi implementation.
- How can I take a look it's working correctly?
Load the sample plugin into a host. I like the VST Host made by Hermann Seib. It looks ancient ;-) but works fine. I recommend to download (trail versions of) other hosts as well. There is great variety in how hosts manage their plugins. You should
test a few to see if you can be as 'host friendly' as possible.
- is it an AudioPlugin or a MidiPlugin?
Both, I guess. Some hosts are really picky and have their own ideas on what a Plugin is 'supposed' to do. I think you'll be fine with VST Host. Just let the plugin publish it needs Audio and sends Midi to the host - let me know if you are unclear how to
do that in VST.NET.
- Is the C# language fast enough for my stuff?
Dont know. I dont have any hard figures. But I DO know that they also do games in .NET (Xna). Everybody said it wouldn't be fast enough, but still it works. And those games also run on the Compact Fx - which has a really simplistic garbage collection scheme.
So My guess is you'll be fine provided you don't do anything 'stupid' (like allocating huge memory ranges during audio processing ;-). Search for real-time programming in .NET on the inet - that should give you some tips. As a last resort you can always program
your DSP components in (managed) C++ (CLI) and call them from the VST.NET Framework.
Hope it helps.