Open LeonardoVezzani opened 7 months ago
Hi Marcel, Thank you for your interest and excuse me for my delay but I fell seek last week.
Yes the issue persist: I still can’t create a new actor controller for my new actor. I was thinking to try it all over again with a more simplistic approach but my lab recently got new computer, so it took some time to move all the active projects and couldn’t get back to it sooner than today.
I’d really appreciate if you could share some tip or insights on the topic. Thank you
L.V.
On 3 May 2024, at 14:24, Marcel Pi @.***> wrote:
Hi,
Sorry for the delay, do you still have this issue? If so, ping me on the CARLA discord server.
Marcel
— Reply to this email directly, view it on GitHubhttps://github.com/carla-simulator/carla/issues/7330#issuecomment-2092913805, or unsubscribehttps://github.com/notifications/unsubscribe-auth/APASK2YYJ4Y5ZPSGRE2MBL3ZAN6ZDAVCNFSM6AAAAABFY427AKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOJSHEYTGOBQGU. You are receiving this because you authored the thread.Message ID: @.***>
I'm trying to implement new kind of actors and their relative controller to be accessed and controlled from the client using the PythonAPI.
I'm building on Win10/Win11 CARLA 0.9.15.
This is what I did so far:
Copying Walker, WalkerBase, WalkerControl, WalkerController I created the classes Dashboard, DashboardBase, DashboardControl, DashboardController.
I proceeded doing the following:
In /LibCarla/source/carla: in /client I created the Dashboard.cpp/.h in /client/detail/client.cpp I created the
_pimpl->Async
for the DashboardControl in /client/detail/simuklator.h I created theapplyControlToDashboard
functionin /rpc/command.h I created the
struct ApplyDashboardControl
and I added it to theCommandType = boost::variant2::variant <>
in /rpc I created the DashboardControl.h that is basically the same of WalkerControl.h with changed names in /sensor/data/ActorDynamicState.h I implemented thePackedDashboardcontrol
and all the relative functions and metodsIn PythonAPI/carla/source/carla/ actor.cpp I created the function
ApplyDashboardControl
and the relative.def
commands.cpp i created theclass_<cs::Command::ApplyDashboardControl>
and all the relative.def
andimplicit_convertible
as done for the WalkerControl control.cpp I created thestd::ostrem &operator
in Ureal/CarlaUE/Plugins/Carla/Source/carla /actor/ActorData.cpp and CarlaActor.cpp I copied all the WalkerController adapting it for the code for the DashboardController (just copied it and changed Walker to Dashboard) Added the folder /dashboard where Dashboard, DashboardControl, Dashboardcontroller are ( which are copies of the relative walker classes with different names) in /game/FrameData.cpp I added the relative
FDashboardControl
in /sensor/WorldObserver.cpp I added the sleif cases to include the dashboardcontrol in Server/CarlaServer I made theBIND_SYNC
for all the DashboardController to work.The doc has been updated automatically during the build as the new classes appear in it
After all this work the I made several builds with successful results but in the PythonAPI and in the carla library that I import in my client scripts I can only access Dashboards but I cannot access the DashboardControl methods.
At this point I don't understand what to do to make it work and even the CARLA devs couldn't help in solving this issue. I guess I might share the files but only if it is strictly necessary as I'd like to publish the results in a journal that would require anonymity.