Jump to content

Boston

Community Members
  • Posts

    30
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Boston

  1. Hey, I'm having the same problem I'm using compiled version 1.3.12 pls help, Boston
  2. Today I have started reading through the code, trying to figure out how to export 2d isometric sprites based on the 3d models of actors used in 0 A.D My app will look much like the Actor Viewer tool in Atlas. Unfortunately I don't know anything, like how create a new "build target" in Pyrogenesis / Atlas and open a new window... What do you think? Boston
  3. I finally have fast internet again. I downloaded a fresh copy of the SVN and made the same changes as I had made to my old local version. CCamera &camera = AtlasView::GetView_Actor()->GetCamera(); camera.SetOrthoProjection(-2.f, -512.f, m_2d_Scale); The above code now does nothing. maybe I should be getting the camera from a different location.
  4. I implemented this code in Object.cpp: if (m_ViewerToggle3d == true) { p->m_ScenarioEditor.GetToolManager().GetCurrentTool()->OnCommand(_T("Set 3d"), NULL); } else { p->m_ScenarioEditor.GetToolManager().GetCurrentTool()->OnCommand(_T("Set 2d"), NULL); } I believe this is the "correct" solution. I've read that the best place to download the latest source is on SVN but I've also read that you have transitioned to hosting the latest source on GitHub, so which is it? Boston
  5. I'd like to split ActorViewerTool.cpp into header and source and include ActorViewerTool.h in Object.cpp That would create a new dependency, so would I have to much around with Premake? I'm not sure what to do with lines 94 to 169 of ActorViewerTool.cpp, any advice? I'll soon be ready to submit a patch to Phabricator. What is the best place to download the current source for modifying and creating a patch? Boston.
  6. I was able to implement a C like function in source/tools/atlas/AtlasUI/ScenarioEditor/Tools/ActorViewerTool.cpp and call it from source/tools/atlas/AtlasUI/ScenarioEditor/Sections/Object/Object.cpp I'm pretty happy with the functionality but not so sure about coding this up "correctly"
  7. I was able to implement POST_MESSAGE(SetViewParamF, (AtlasMessage::eRenderView::ACTOR, L"Set 2d scale", obj->m_Distance / 5)); instead of POST_MESSAGE(SetViewParamI, (AtlasMessage::eRenderView::ACTOR, L"Set 2d scale", obj->m_Distance / 5)); for smoother scrolling. I need to implement POST_MESSAGE(SetViewParamB, (ActorViewerTool, L"Set Toggle 3d", m_Toggle3d)); Then everything else should fall into place Boston
  8. I tried to declare a C like function in ActorViewerTool.cpp and call it from within View.cpp unfortunately, build/workspaces/gcc/atlas.make "includes" View.cpp and not ActorViewerTool.cpp I guess this is why I can't try to run code in ActorViewerTool.cpp from View.cpp without getting a linking error
  9. 2: is solved by making a call such as: POST_MESSAGE(SetViewParamI, (AtlasMessage::eRenderView::ACTOR, L"Set 2d scale", 512)); from within ActorViewerTool.cpp P.S. 1: might have to create the file ActorViewerTool.h
  10. I can share data between: source/tools/atlas/AtlasUI/ScenarioEditor/Tools/ActorViewerTool.cpp and: source/tools/atlas/GameInterface/View.cpp fairly easily by declaring global variables in ActorViewerTool.cpp (and I know this is an ugly hack) But I cannot figure out how to trigger a call to ActorViewerTool::PostLookAt() from View.cpp, to update the display after modifying parameters. I cannot figure out how to trigger a call to camera.SetOrthoProjection(-2.f, -512.f, XXX); from ActorViewerTool.cpp (in order to change the scale of the image by clicking and dragging on it)
  11. No, I tried that when I was fooling around with the code. I don't know why the values have to be negated. Boston.
  12. I changed line 511 of source/graphics/CameraController.cpp from: m_Camera.SetPerspectiveProjection(m_ViewNear, m_ViewFar, m_ViewFOV); to: m_Camera.SetOrthoProjection(-m_ViewNear, -m_ViewFar, 256.f); this is the result: Sound works perfectly but I couldn't capture it with the screen capture software.
  13. They talk a bit about isometric projection in this topic: For future reference, this works: camera.SetOrthoProjection(-2.f, -512.f, 24.0f); And this doesn't work: camera.SetOrthoProjection(2.f, 512.f, 24.0f);
  14. I cant get the orthographic camera to work. Does anyone have code that works with the orthographic camera? Delenda Est, the mod for 0 A.D, uses a perspective camera with a narrow field of view. With a narrow field of view you have to place the camera further away to achieve the same level of "zoom" If the distance from the camera is too far, details like shadows are no longer drawn. Will look into fixing this, tomorrow. Boston
  15. I've been fooling around with an orthogonal camera. It would be nice if it was more consistent with the perspective camera. This is as good a result as I can get, at least for today: Boston
  16. I don't know why passing the value by a global variable didn't work last time, but this time it did! Boston.
  17. The correct syntax is ObservablePtr<ITool>& Tool = p->m_ScenarioEditor.GetToolManager().GetCurrentTool(); ActorViewerTool *Tool1 = static_cast<ActorViewerTool*>(*Tool); Tool1->Toggle_3d(m_ViewerToggle3d); I get the same problem with the linker as I did trying to share a global variable.
  18. m_ScenarioEditor.GetToolManager().GetCurrentToolName(); (added to Object.cpp) returns "ActorViewerTool", but m_ScenarioEditor.GetToolManager().GetCurrentTool(); returns type ObservablePtr<ITool>& and I cant get it to cast as ActorViewerTool& to modify it's variables. I tried passing data via a global variable, but the program wouldn't link. Boston.
  19. I've seen that. I do plan on using it in future, but setting a narrow field of view meant making less changes to the code. I have a question. If I do use this to create a bunch of 2d animations, how do I distribute them under the terms of the creative commons licence?
  20. You could put in a trigger that converts between perspective when needed and preffered mode during game play
  21. It would be hard to add an isometric camera to 0 A.D. because sometimes you would want the isometric camera and other times (such as during cutscenes) you'd want the perspective camera.
  22. I might have to include more headers in view.cpp Then would I have to modify the makefile? I don't know what the system is with makefiles in 0 A.D. but I will have to learn it eventually. Boston
  23. Ah cool. Yes, that's exactly what I'm doing. I'm thinking about rolling my own app that uses a true orthogonal camera with various export settings, but I'll see if I can do this simple change and get it added to the game first Boston.
  24. I am attempting to add a button to the Actor Viewer that will toggle between 2d and 3d projection: camera.SetPerspectiveProjection(2.f, 512.f, DEGTORAD(20.f)); found in source/tools/atlas/GameInterface/View.cpp sets the Field Of View, IE how strongly things are effected by perspective. float m_Distance; found on line 38 of source/tools/atlas/AtlasUI/ScenarioEditor/Tools/ActorViewerTool.cpp sets the distance from the object being viewed to the camera, IE how large the object appears on screen. I want to modify both of these at the same time, but I can't for the life of me find a way to send data from source/tools/atlas/GameInterface/View.cpp to source/tools/atlas/AtlasUI/ScenarioEditor/Tools/ActorViewerTool.cpp Any advice would be appreciated. Boston.
  25. I added a button to the Actor Viewer I might fix the problem with having to zoom in and out after toggling the 3d look, later. Boston.
×
×
  • Create New...