Я пытаюсь перенести старый проект из DirectX на SDL2. Я использую SDL2-CS, потому что единственное, что мне удалось найти, это C# SDL2, который, кажется, устарел (последняя неустойчивая версия - 6.1.1beta в 2010 году, последняя стабильная - 6.1.0 в 2008 году)SDL 2 C# - Открытие джойстика
Джойстик (Logitech Force 3D Pro/Logitech Attack 3) полностью функциональен и работает в Linux с использованием SDL2 и DirectX 10 в Windows. Вот мой Joystick-Hello-world в C# (с использованием проекта Console Application по умолчанию в VS2010, ссылка на SDL2-CS.dll (SDL2.dll также присутствует в папке, в которой создается EXE), и компилируется/выполняется без любые ошибки):
using System;
using System.Collection.Generic;
using System.Linq;
using System.Text;
using SDL2;
namespace Joystick_In_SDL_2_For_CSharp
{
class Program
{
static void Main(string[] args)
{
SDL.SDL_Init(SDL.SDL_INIT_EVERYTHING);
IntPtr myJoystick = SLD.SDL_Joystick(0);
if(myJoystick == IntPtr.Zero)
System.Console.WriteLine("Ooops, something fishy's goin' on here!" + SDL.SDL_GetError());
else
System.Console.WriteLine("You have successfully loaded the joystick \"" + SDL.SDL_JoystickName(myJoystick) + "\"");
SDL.SDL_JoystickClose(myJoystick);
}
}
}
Console отображает "Упс" -message, результат SDL.SDL_GetError() является есть 0 джойстики доступны и имя естественно = NULL. По крайней мере, для индекса Linux для меня всегда было == 0 (я тестировал с 1,2,3 ...), потому что у меня только один джойстик, подключенный к моему ноутбуку в определенный момент времени. Должен ли я добавить что-то еще? Идеи, советы и/или критика приветствуются!
Спасибо, RBA
Возможно, вы удалите весь первый абзац, так как на самом деле он не добавляет большого значения вопросу (кроме большого блока текста, который может заставить людей пропустить ваш вопрос). Хотя вы оставляете типы контроллеров, на которых вы тестируете, поскольку это может быть важно. –
Спасибо. Изменен первый абзац. Будет содержать информацию о портировании с DirectX на SDL2 и на другое SDL2-привязку для C#, хотя, поскольку кто-то может предложить лучший SDL2-C# -связывание, если он есть. – rbaleksandar