kswaldemar / rewind-viewer Goto Github PK
View Code? Open in Web Editor NEWFast match viewer with rewinding support for Russian AI Cup championship series
License: MIT License
Fast match viewer with rewinding support for Russian AI Cup championship series
License: MIT License
окружение macOS 10.12.6, cmake version 3.9.5
питоновский клиент:
import RewindClient as rc
client = rc.RewindClient()
client.circle(10, 10, 10, 0xffffff)
client.close()
вывод rewind-viewer'a
./rewindviewer
date time ( uptime ) [ thread name/id ] file:line v|
2017-11-06 18:05:50.632 ( 0.000s) [main thread ] loguru.hpp:1813 0| arguments: ./rewindviewer
2017-11-06 18:05:50.632 ( 0.000s) [main thread ] loguru.hpp:1816 0| Current dir: /Users/fox/projects/third_party/rewind-viewer/build
2017-11-06 18:05:50.632 ( 0.000s) [main thread ] loguru.hpp:1818 0| stderr verbosity: 0
2017-11-06 18:05:50.632 ( 0.000s) [main thread ] loguru.hpp:1819 0| -----------------------------------
2017-11-06 18:05:50.632 ( 0.001s) [main thread ] loguru.hpp:1971 0| Logging to 'rewindviewer-debug.log', mode: 'w', verbosity: 9
2017-11-06 18:05:50.632 ( 0.001s) [main thread ] loguru.hpp:1971 0| Logging to 'rewindviewer.log', mode: 'w', verbosity: 0
2017-11-06 18:05:50.632 ( 0.001s) [main thread ] main.cpp:29 0| Init GLFW
2017-11-06 18:05:50.655 ( 0.024s) [main thread ] main.cpp:80 0| Create main window
2017-11-06 18:05:50.732 ( 0.100s) [main thread ] main.cpp:88 0| Setup application icon
2017-11-06 18:05:50.732 ( 0.100s) [main thread ] main.cpp:37 0| Load OpenGL functions
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] main.cpp:43 0| OpenGL 4.1 INTEL-10.25.17, GLSL 4.10
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] main.cpp:44 0| Driver Intel Inc., Renderer Intel Iris Pro OpenGL Engine
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] main.cpp:55 0| Setup vertical sync to 60fps
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] main.cpp:58 0| Start main draw loop
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] main.cpp:100 0| Create camera
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] main.cpp:104 0| Create Resource manager
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] main.cpp:106 0| Create Scene
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] Scene.cpp:54 0| Initialize needed attributes
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] Scene.cpp:60 0| Compile shaders
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] Shader.cpp:87 0| Start compiling shader: vertex=resources/shaders/simple.vert, fragment=resources/shaders/uniform_color.frag
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] Shader.cpp:88 0| Load Vertex shader
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] Shader.cpp:90 0| Load Fragment shader
2017-11-06 18:05:50.738 ( 0.106s) [main thread ] Shader.cpp:93 0| Compile Vertex shader
2017-11-06 18:05:50.741 ( 0.109s) [main thread ] Shader.cpp:95 0| Compile Fragment shader
2017-11-06 18:05:50.741 ( 0.109s) [main thread ] Shader.cpp:98 0| Link shader program
2017-11-06 18:05:50.752 ( 0.121s) [main thread ] Shader.cpp:87 0| Start compiling shader: vertex=resources/shaders/circle.vert, fragment=resources/shaders/circle.frag
2017-11-06 18:05:50.753 ( 0.121s) [main thread ] Shader.cpp:88 0| Load Vertex shader
2017-11-06 18:05:50.753 ( 0.121s) [main thread ] Shader.cpp:90 0| Load Fragment shader
2017-11-06 18:05:50.753 ( 0.121s) [main thread ] Shader.cpp:93 0| Compile Vertex shader
2017-11-06 18:05:50.754 ( 0.122s) [main thread ] Shader.cpp:95 0| Compile Fragment shader
2017-11-06 18:05:50.754 ( 0.122s) [main thread ] Shader.cpp:98 0| Link shader program
2017-11-06 18:05:50.755 ( 0.123s) [main thread ] Shader.cpp:87 0| Start compiling shader: vertex=resources/shaders/lines.vert, fragment=resources/shaders/lines.frag
2017-11-06 18:05:50.755 ( 0.123s) [main thread ] Shader.cpp:88 0| Load Vertex shader
2017-11-06 18:05:50.755 ( 0.123s) [main thread ] Shader.cpp:90 0| Load Fragment shader
2017-11-06 18:05:50.755 ( 0.123s) [main thread ] Shader.cpp:93 0| Compile Vertex shader
2017-11-06 18:05:50.756 ( 0.124s) [main thread ] Shader.cpp:95 0| Compile Fragment shader
2017-11-06 18:05:50.756 ( 0.124s) [main thread ] Shader.cpp:98 0| Link shader program
2017-11-06 18:05:50.756 ( 0.124s) [main thread ] Shader.cpp:87 0| Start compiling shader: vertex=resources/shaders/simple.vert, fragment=resources/shaders/textured.frag
2017-11-06 18:05:50.756 ( 0.124s) [main thread ] Shader.cpp:88 0| Load Vertex shader
2017-11-06 18:05:50.756 ( 0.124s) [main thread ] Shader.cpp:90 0| Load Fragment shader
2017-11-06 18:05:50.757 ( 0.125s) [main thread ] Shader.cpp:93 0| Compile Vertex shader
2017-11-06 18:05:50.758 ( 0.126s) [main thread ] Shader.cpp:95 0| Compile Fragment shader
2017-11-06 18:05:50.758 ( 0.126s) [main thread ] Shader.cpp:98 0| Link shader program
2017-11-06 18:05:50.758 ( 0.126s) [main thread ] Scene.cpp:64 0| Load background texture
2017-11-06 18:05:50.777 ( 0.145s) [main thread ] Scene.cpp:68 0| Load unit textures
2017-11-06 18:05:50.780 ( 0.148s) [main thread ] Scene.cpp:72 0| Create rectangle for future rendering
2017-11-06 18:05:50.780 ( 0.148s) [main thread ] Scene.cpp:96 0| Create Uniform buffer
2017-11-06 18:05:50.780 ( 0.148s) [main thread ] Scene.cpp:104 0| Bind Uniform buffer to shaders
2017-11-06 18:05:50.780 ( 0.148s) [main thread ] main.cpp:108 0| Create GUI controller
2017-11-06 18:05:50.805 ( 0.173s) [main thread ] main.cpp:112 0| Start networking thread
2017-11-06 18:05:50.805 ( 0.173s) [main thread ] main.cpp:123 0| Start render loop
2017-11-06 18:05:50.805 ( 0.173s) [ 1521AFF] NetListener.cpp:28 0| NetClient:: Start listening
libc++abi.dylib: terminating with uncaught exception of type std::runtime_error: Accept on socket returned NULL. errno=57
Loguru caught a signal: SIGABRT
Stack trace:
13 0x7fffdcbbe08d thread_start + 13
12 0x7fffdcbbe887 _pthread_body + 0
11 0x7fffdcbbe93b _pthread_body + 180
10 0x10b4ef085 void* std::__thread_proxy<std::tuple<std::unique_ptr<std::__thread_struct, std::default_delete<std::__thread_struct> >, prepare_and_run_game_loop(GLFWwindow*)::$_1> >(void*) + 517
9 0x10b4ef328 prepare_and_run_game_loop(GLFWwindow*)::$_1::operator()() const + 24
8 0x10b509d18 NetListener::run() + 328
7 0x7fffdb5ae7be __cxxabiv1::exception_cleanup_func(_Unwind_Reason_Code, _Unwind_Exception*) + 0
6 0x7fffdb5aed49 std::__terminate(void (*)()) + 8
5 0x7fffdc0c1713 _objc_terminate() + 124
4 0x7fffdb5b1c17 default_terminate_handler() + 243
3 0x7fffdb58c94a __cxa_bad_cast + 0
2 0x7fffdca39420 abort + 129
1 0x4e58a6240 5 ??? 0x00000004e58a6240 0x0 + 21030920768
0 0x7fffdcbb4b3a _sigtramp + 26
2017-11-06 18:05:55.682 ( 5.050s) [ 1521AFF] :0 FATL| Signal: SIGABRT
Sometimes we need just the border, not the fill.
Для примера хочу ограничить фпс в 15-20, что бы комп поменьше пыжился и быстрее считал саму стратегию
rewind-viewer/clients/java/RewindClient.java
Lines 138 to 139 in b323412
Locale.setDefault(Locale.US);
в main(), иначе String.format может записывать дробные типы с запятой, что ломает json.
It would be really great to have opportunity to draw custom short strings by coordinates.
Is where any chance you'll have time for this?
Windows build broken after comit with fontawesome icons
Один раз повторилось под нагрузкой из нового java клиента
macOS
Crashed Thread: 0 main thread Dispatch queue: com.apple.main-thread
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Signal: Abort trap: 6
Termination Reason: Namespace SIGNAL, Code 0x6
Terminating Process: rewindviewer [74895]
Thread 0 Crashed:: main thread Dispatch queue: com.apple.main-thread
0 libsystem_kernel.dylib 0x00007fffdcacc34a mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fffdcacb797 mach_msg + 55
2 com.apple.SkyLight 0x00007fffd8d60b33 _CGSSetNotifications + 129
3 com.apple.SkyLight 0x00007fffd8db82a2 SLPSSetNotifications + 52
4 com.apple.HIToolbox 0x00007fffc6814a55 HIApplication::HandleActivated(OpaqueEventRef*, unsigned char, OpaqueWindowPtr*, unsigned char) + 139
5 com.apple.HIToolbox 0x00007fffc678e8f6 HIApplication::EventObserver(unsigned int, OpaqueEventRef*, void*) + 260
6 com.apple.HIToolbox 0x00007fffc6755369 _NotifyEventLoopObservers + 155
7 com.apple.AppKit 0x00007fffc560fa35 -[NSWindow(NSEventRouting) _handleMouseDownEvent:isDelayedEvent:] + 4267
8 com.apple.AppKit 0x00007fffc560ca6c -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 1942
9 com.apple.AppKit 0x00007fffc560bf0a -[NSWindow(NSEventRouting) sendEvent:] + 541
10 com.apple.AppKit 0x00007fffc5490681 -[NSApplication(NSEvent) sendEvent:] + 1145
11 rewindviewer 0x000000010143e2d6 -[GLFWApplication sendEvent:] + 166
12 rewindviewer 0x000000010144031a _glfwPlatformPollEvents + 138
13 rewindviewer 0x0000000101438f3e glfwPollEvents + 46
14 rewindviewer 0x00000001013e39f7 prepare_and_run_game_loop(GLFWwindow*) + 1815
15 rewindviewer 0x00000001013e3072 main + 754
16 libdyld.dylib 0x00007fffdc9a5235 start + 1
Thread 1:
0 libsystem_kernel.dylib 0x00007fffdcad444e __workq_kernreturn + 10
1 libsystem_pthread.dylib 0x00007fffdcbbe48e _pthread_wqthread + 1023
2 libsystem_pthread.dylib 0x00007fffdcbbe07d start_wqthread + 13
Thread 2:: Dispatch queue: com.apple.root.user-initiated-qos
0 libsystem_kernel.dylib 0x00007fffdcad42d6 __terminate_with_payload + 10
1 libsystem_kernel.dylib 0x00007fffdcacf346 abort_with_payload_wrapper_internal + 122
2 libsystem_kernel.dylib 0x00007fffdcacf2cc abort_with_reason + 22
3 libobjc.A.dylib 0x00007fffdc0c11b2 _objc_fatalv(unsigned long long, unsigned long long, char const*, __va_list_tag*) + 102
4 libobjc.A.dylib 0x00007fffdc0c104d _objc_fatal(char const*, ...) + 154
5 libobjc.A.dylib 0x00007fffdc0cbf8a (anonymous namespace)::AutoreleasePoolPage::busted(bool) + 144
6 libobjc.A.dylib 0x00007fffdc0b3e8f objc_autoreleasePoolPush + 78
7 libdispatch.dylib 0x00007fffdc971568 _dispatch_root_queue_drain + 143
8 libdispatch.dylib 0x00007fffdc97148c _dispatch_worker_thread3 + 99
9 libsystem_pthread.dylib 0x00007fffdcbbe5a2 _pthread_wqthread + 1299
10 libsystem_pthread.dylib 0x00007fffdcbbe07d start_wqthread + 13
Thread 3:: com.apple.NSEventThread
0 libsystem_kernel.dylib 0x00007fffdcacc34a mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fffdcacb797 mach_msg + 55
2 com.apple.CoreFoundation 0x00007fffc721e434 __CFRunLoopServiceMachPort + 212
3 com.apple.CoreFoundation 0x00007fffc721d8c1 __CFRunLoopRun + 1361
4 com.apple.CoreFoundation 0x00007fffc721d114 CFRunLoopRunSpecific + 420
5 com.apple.AppKit 0x00007fffc4e63f02 _NSEventThread + 205
6 libsystem_pthread.dylib 0x00007fffdcbbe93b _pthread_body + 180
7 libsystem_pthread.dylib 0x00007fffdcbbe887 _pthread_start + 286
8 libsystem_pthread.dylib 0x00007fffdcbbe08d thread_start + 13
Thread 4:
0 rewindviewer 0x00000001013ff6cf void std::__1::__tree_balance_after_insert<std::__1::__tree_node_base<void*>*>(std::__1::__tree_node_base<void*>*, std::__1::__tree_node_base<void*>*) + 591
1 rewindviewer 0x000000010141fbe2 std::__1::__tree<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> >, std::__1::__map_value_compare<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> > > >::__insert_node_at(std::__1::__tree_end_node<std::__1::__tree_node_base<void*>*>*, std::__1::__tree_node_base<void*>*&, std::__1::__tree_node_base<void*>*) + 194
2 rewindviewer 0x000000010141db7d std::__1::pair<std::__1::__tree_iterator<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> >, std::__1::__tree_node<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> >, void*>*, long>, bool> std::__1::__tree<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> >, std::__1::__map_value_compare<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> >, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> > > >::__emplace_unique_key_args<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::piecewise_construct_t const&, std::__1::tuple<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&>, std::__1::tuple<> >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::piecewise_construct_t const&&&, std::__1::tuple<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&>&&, std::__1::tuple<>&&) + 285
3 rewindviewer 0x000000010141d4a6 std::__1::map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> > > >::operator[](std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 278
4 rewindviewer 0x00000001014197ee nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>::operator[](std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 142
5 rewindviewer 0x000000010141382d nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>::parser::parse_internal(bool) + 1117
6 rewindviewer 0x0000000101412e66 nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>::parser::parse() + 70
7 rewindviewer 0x0000000101410fbd nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer> nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>::parse<unsigned char const*, 0>(unsigned char const*, unsigned char const*, std::__1::function<bool (int, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>::parse_event_t, nlohmann::basic_json<std::__1::map, std::__1::vector, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, bool, long long, unsigned long long, double, std::__1::allocator, nlohmann::adl_serializer>&)>) + 989
8 rewindviewer 0x000000010140e979 NetListener::process_json_message(unsigned char const*, unsigned char const*) + 169
9 rewindviewer 0x000000010140df55 NetListener::run() + 2693
10 rewindviewer 0x00000001013e5e18 prepare_and_run_game_loop(GLFWwindow*)::$_2::operator()() const + 24
11 rewindviewer 0x00000001013e5b75 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, prepare_and_run_game_loop(GLFWwindow*)::$_2> >(void*) + 517
12 libsystem_pthread.dylib 0x00007fffdcbbe93b _pthread_body + 180
13 libsystem_pthread.dylib 0x00007fffdcbbe887 _pthread_start + 286
14 libsystem_pthread.dylib 0x00007fffdcbbe08d thread_start + 13
Стабильно падает при посылке прямоугольника визуализатору.
> cmake --CMAKE_BUILD_TYPE=Release ..
CMake Warning (dev) in CMakeLists.txt:
No project() command is present. The top-level CMakeLists.txt file must
contain a literal, direct call to the project() command. Add a line of
code such as
project(ProjectName)
near the top of the file, but after cmake_minimum_required().
CMake is pretending there is a "project(Project)" command on the first
line.
This warning is for project developers. Use -Wno-dev to suppress it.
-- The C compiler identification is AppleClang 10.0.1.10010046
-- The CXX compiler identification is AppleClang 10.0.1.10010046
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found OpenGL: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/OpenGL.framework
-- Check include/json.hpp... Already exists
-- Check include/loguru.hpp... Already exists
-- Build glfw from sources: Glfw_LIBRARY-NOTFOUND
CMake Deprecation Warning at 3rdparty/glfw/CMakeLists.txt:10 (cmake_policy):
The OLD behavior for policy CMP0042 will be removed from a future version
of CMake.
The cmake-policies(7) manual explains that the OLD behaviors of all
policies are deprecated and that a policy should be set to OLD only under
specific short-term circumstances. Projects should be ported to the NEW
behavior and not rely on setting a policy to OLD.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Could NOT find Vulkan (missing: VULKAN_LIBRARY VULKAN_INCLUDE_DIR)
-- Using Cocoa for window creation
CMake Warning (dev) at 3rdparty/glm/CMakeLists.txt:101 (option):
Policy CMP0077 is not set: option() honors normal variables. Run "cmake
--help-policy CMP0077" for policy details. Use the cmake_policy command to
set the policy and suppress this warning.
For compatibility with older versions of CMake, option is clearing the
normal variable 'GLM_TEST_ENABLE'.
This warning is for project developers. Use -Wno-dev to suppress it.
GLM: Clang - Clang compiler
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/tolsi/Documents/miniaicups/rewind-viewer/build
> cmake --build .
...
[ 96%] Building CXX object src/CMakeFiles/rewindviewer.dir/main.cpp.o
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/main.cpp:7:
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/viewer/UIController.h:12:
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/cgutils/Camera.h:12:
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/viewer/Config.h:7:
/Users/tolsi/Documents/miniaicups/rewind-viewer/src/viewer/Frame.h:37:44: error: implicit instantiation of undefined template
'std::__1::array<Frame::primitives_t, 5>'
std::array<primitives_t, LAYERS_COUNT> primitives;
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__tuple:223:64: note:
template is declared here
template <class _Tp, size_t _Size> struct _LIBCPP_TEMPLATE_VIS array;
^
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/main.cpp:7:
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/viewer/UIController.h:12:
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/cgutils/Camera.h:12:
/Users/tolsi/Documents/miniaicups/rewind-viewer/src/viewer/Config.h:28:68: error: implicit instantiation of undefined template
'std::__1::array<bool, 5>'
std::array<bool, static_cast<size_t>(Frame::LAYERS_COUNT)> enabled_layers = {{1, 1, 1, 1, 1}};
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__tuple:223:64: note:
template is declared here
template <class _Tp, size_t _Size> struct _LIBCPP_TEMPLATE_VIS array;
^
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/main.cpp:4:
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/cgutils/Shader.h:10:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:500:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string_view:176:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__string:56:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:644:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2335:5: warning:
delete called on 'ProtoHandler' that is abstract but has non-virtual destructor [-Wdelete-non-virtual-dtor]
delete __ptr;
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2648:7: note: in
instantiation of member function 'std::__1::default_delete<ProtoHandler>::operator()' requested here
__ptr_.second()(__tmp);
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2602:19: note: in
instantiation of member function 'std::__1::unique_ptr<ProtoHandler, std::__1::default_delete<ProtoHandler> >::reset'
requested here
~unique_ptr() { reset(); }
^
/Users/tolsi/Documents/miniaicups/rewind-viewer/src/main.cpp:140:35: note: in instantiation of member function
'std::__1::unique_ptr<ProtoHandler, std::__1::default_delete<ProtoHandler> >::~unique_ptr' requested here
std::unique_ptr<ProtoHandler> proto_handler;
^
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/main.cpp:4:
In file included from /Users/tolsi/Documents/miniaicups/rewind-viewer/src/cgutils/Shader.h:10:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string:500:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/string_view:176:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__string:56:
In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:644:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2335:5: warning:
delete called on non-final 'JsonHandler' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
delete __ptr;
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2648:7: note: in
instantiation of member function 'std::__1::default_delete<JsonHandler>::operator()' requested here
__ptr_.second()(__tmp);
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2602:19: note: in
instantiation of member function 'std::__1::unique_ptr<JsonHandler, std::__1::default_delete<JsonHandler> >::reset'
requested here
~unique_ptr() { reset(); }
^
/Users/tolsi/Documents/miniaicups/rewind-viewer/src/main.cpp:146:25: note: in instantiation of member function
'std::__1::unique_ptr<JsonHandler, std::__1::default_delete<JsonHandler> >::~unique_ptr' requested here
proto_handler = std::make_unique<JsonHandler>(&scene);
^
2 warnings and 2 errors generated.
make[2]: *** [src/CMakeFiles/rewindviewer.dir/main.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/rewindviewer.dir/all] Error 2
make: *** [all] Error 2```
I would not create new release for each bugfix version, so there is place with binary files for windows. You may find binaries for almost all tagged version
Попробовал сбилдить визуализатор, падает при
cmake --build . --config Release
ошибка:
"C:\Users\mediamarkt\raic17\rewind-viewer\build\ALL_BUILD.vcxproj" (целевой объект по умолчанию) (1) ->
"C:\Users\mediamarkt\raic17\rewind-viewer\build\src\rewindviewer.vcxproj" (целевой объект по умолчанию) (9) ->
(ClCompile конечный объект) ->
C:\Users\mediamarkt\raic17\rewind-viewer\src\net\NetListener.cpp(137): error C2593: неоднозначный "operator +=" [C:\Users\mediamarkt\raic17\rewind-v
iewer\build\src\rewindviewer.vcxproj]
Предупреждений: 23
Ошибок: 1
В данный момент при отрисовке кадра для каждого объекта (отрезок, круг, квадрат и т.д.) клиент отправляет HTTP запрос. Возможно ли сделать так, чтобы rewind-viewer
принимал запрос со всеми объектами в кадре вместе с вызовом метода клиента end_frame()
?
Мои замеры для игры MadCars длиной в 2061 тик показали следующие результаты:
Я сделал билд под windows 7, в visual studio 2015.
Запускаю Debug\rewindviewer.exe
запускаю LocalRunner.py который по socket создает соединение, передает игровые тики
смотрю в rewindviewer.exe - все отображается.
При закрытии LocalRunner.py - в rewindviewer.exe происходит краш
https://prnt.sc/opmq5t
каждый раз воспроизводится - при закрытии LocalRunner.py
т.е видимо при close сокета
пробовал смотреть логи
rewindviewer.log
rewindviewer-debug.log
там вот такое Один раз
2019-08-07 18:49:56.295 ( 0.326s) [main thread ] main.cpp:145 0| Create network protocol handler: working with JSON protocol
2019-08-07 18:49:56.295 ( 0.326s) [main thread ] main.cpp:150 0| Start networking thread
2019-08-07 18:49:56.297 ( 0.329s) [ ] NetListener.cpp:35 0| NetClient:: Start listening
2019-08-07 18:49:56.297 ( 0.329s) [main thread ] main.cpp:166 0| Start render loop
2019-08-07 18:49:59.661 ( 3.692s) [main thread ] NetListener.cpp:56 0| Stopping network listening
2019-08-07 18:49:59.661 ( 3.693s) [main thread ] main.cpp:202 0| Save config file rewindviewer.cfg
2019-08-07 18:49:59.662 ( 3.693s) [main thread ] main.cpp:205 0| Exit from application
2019-08-07 18:49:59.762 ( 3.793s) [ ] main.cpp:156 ERR| NetListener Exception:: Accept on socket returned NULL. errno=0; No error
2019-08-07 18:49:59.772 ( 3.804s) [main thread ] loguru.hpp:1703 0| atexit
Но в основном (и во все следующие и предыдущие разы) ничего необычного
т.е ошибки про сокет уже нет, а коррупция heap есть
019-08-07 18:55:27.369 ( 8.503s) [ ] JsonHandler.cpp:134 8| JsonHandler::Circle detected
2019-08-07 18:55:27.370 ( 8.503s) [ ] JsonHandler.cpp:150 8| JsonHandler::Popup
2019-08-07 18:55:27.370 ( 8.503s) [ ] JsonHandler.cpp:146 8| JsonHandler::Message
2019-08-07 18:55:27.370 ( 8.503s) [ ] JsonHandler.cpp:129 8| JsonHandler::End
В Release версии происходит краш временами (без сообщения ошибки детального), а временами - нет.
Пробовал prebuilt exe для win - от старой версии, отсюда
#23
rewindviewer_win_1_2_2
там нет краша при закрытии LocalRunner.py
Почему-то не могу собрать из исходников, прошу обновить так же пакет сборку для Windows.
запускаю https://pastebin.com/D3XqpM0V
не рисует круги, юнитов: http://recordit.co/q7cdUIfLd2
рисует лишние линии, даже когда не подключена стратегия
arguments: C:\\Users\\opera\\Desktop\\rewindviewer\\rewindviewer.exe Current dir: C:\Users\opera\Desktop\rewindviewer File verbosity level: 7 date time ( uptime ) [ thread name/id ] file:line v| 2017-11-11 11:52:47.115 ( 0.003s) [main thread ] loguru.hpp:1971 0| Logging to 'rewindviewer-debug.log', mode: 'w', verbosity: 7 2017-11-11 11:52:47.115 ( 0.003s) [main thread ] loguru.hpp:1971 0| Logging to 'rewindviewer.log', mode: 'w', verbosity: 0 2017-11-11 11:52:47.115 ( 0.003s) [main thread ] main.cpp:29 0| Init GLFW 2017-11-11 11:52:47.153 ( 0.041s) [main thread ] main.cpp:88 0| Create main window 2017-11-11 11:52:47.342 ( 0.229s) [main thread ] main.cpp:99 0| Setup application icon 2017-11-11 11:52:47.343 ( 0.231s) [main thread ] main.cpp:41 0| Load OpenGL functions 2017-11-11 11:52:47.344 ( 0.231s) [main thread ] main.cpp:47 0| OpenGL 3.3.13497 Core Profile Context 23.20.788.0, GLSL 4.50 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] main.cpp:48 0| Driver ATI Technologies Inc., Renderer Radeon (TM) RX 480 Graphics 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] main.cpp:59 0| Setup vertical sync to 60fps 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] main.cpp:62 0| Start main draw loop 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] main.cpp:111 0| Create camera 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] main.cpp:115 0| Create Resource manager 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] main.cpp:117 0| Create Scene 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] Scene.cpp:60 0| Initialize needed attributes 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] Scene.cpp:66 0| Compile shaders 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] Shader.cpp:90 0| Start compiling shader: vertex=resources/shaders/simple.vert, fragment=resources/shaders/uniform_color.frag 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] Shader.cpp:91 0| Load Vertex shader 2017-11-11 11:52:47.344 ( 0.232s) [main thread ] Shader.cpp:93 0| Load Fragment shader 2017-11-11 11:52:47.345 ( 0.233s) [main thread ] Shader.cpp:96 0| Compile Vertex shader 2017-11-11 11:52:47.345 ( 0.233s) [main thread ] Shader.cpp:98 0| Compile Fragment shader 2017-11-11 11:52:47.345 ( 0.233s) [main thread ] Shader.cpp:101 0| Link shader program 2017-11-11 11:52:47.347 ( 0.234s) [main thread ] Shader.cpp:90 0| Start compiling shader: vertex=resources/shaders/circle.vert, fragment=resources/shaders/circle.frag 2017-11-11 11:52:47.347 ( 0.234s) [main thread ] Shader.cpp:91 0| Load Vertex shader 2017-11-11 11:52:47.347 ( 0.235s) [main thread ] Shader.cpp:93 0| Load Fragment shader 2017-11-11 11:52:47.347 ( 0.235s) [main thread ] Shader.cpp:96 0| Compile Vertex shader 2017-11-11 11:52:47.347 ( 0.235s) [main thread ] Shader.cpp:98 0| Compile Fragment shader 2017-11-11 11:52:47.348 ( 0.236s) [main thread ] Shader.cpp:101 0| Link shader program 2017-11-11 11:52:47.349 ( 0.237s) [main thread ] Shader.cpp:90 0| Start compiling shader: vertex=resources/shaders/lines.vert, fragment=resources/shaders/lines.frag 2017-11-11 11:52:47.349 ( 0.237s) [main thread ] Shader.cpp:91 0| Load Vertex shader 2017-11-11 11:52:47.349 ( 0.237s) [main thread ] Shader.cpp:93 0| Load Fragment shader 2017-11-11 11:52:47.349 ( 0.237s) [main thread ] Shader.cpp:96 0| Compile Vertex shader 2017-11-11 11:52:47.350 ( 0.237s) [main thread ] Shader.cpp:98 0| Compile Fragment shader 2017-11-11 11:52:47.350 ( 0.238s) [main thread ] Shader.cpp:101 0| Link shader program 2017-11-11 11:52:47.351 ( 0.239s) [main thread ] Shader.cpp:90 0| Start compiling shader: vertex=resources/shaders/simple.vert, fragment=resources/shaders/textured.frag 2017-11-11 11:52:47.353 ( 0.241s) [main thread ] Shader.cpp:91 0| Load Vertex shader 2017-11-11 11:52:47.353 ( 0.241s) [main thread ] Shader.cpp:93 0| Load Fragment shader 2017-11-11 11:52:47.354 ( 0.242s) [main thread ] Shader.cpp:96 0| Compile Vertex shader 2017-11-11 11:52:47.354 ( 0.242s) [main thread ] Shader.cpp:98 0| Compile Fragment shader 2017-11-11 11:52:47.355 ( 0.243s) [main thread ] Shader.cpp:101 0| Link shader program 2017-11-11 11:52:47.356 ( 0.244s) [main thread ] Scene.cpp:70 0| Load background texture 2017-11-11 11:52:47.357 ( 0.245s) [main thread ] Scene.cpp:74 0| Load unit textures 2017-11-11 11:52:47.396 ( 0.284s) [main thread ] Scene.cpp:92 0| Create rectangle for future rendering 2017-11-11 11:52:47.397 ( 0.285s) [main thread ] Scene.cpp:116 0| Create Uniform buffer 2017-11-11 11:52:47.398 ( 0.286s) [main thread ] Scene.cpp:124 0| Bind Uniform buffer to shaders 2017-11-11 11:52:47.398 ( 0.286s) [main thread ] main.cpp:119 0| Create GUI controller 2017-11-11 11:52:47.412 ( 0.299s) [main thread ] main.cpp:123 0| Start networking thread 2017-11-11 11:52:47.413 ( 0.301s) [ ] NetListener.cpp:32 0| NetClient:: Start listening 2017-11-11 11:52:47.413 ( 0.301s) [main thread ] main.cpp:140 0| Start render loop 2017-11-11 11:52:50.461 ( 3.349s) [ ] NetListener.cpp:40 0| NetListener:: Got connection from 127.0.0.1:195 2017-11-11 11:53:48.196 ( 61.084s) [main thread ] NetListener.cpp:86 0| Stopping network listening 2017-11-11 11:53:48.197 ( 61.084s) [main thread ] main.cpp:167 0| Exit from application 2017-11-11 11:53:48.345 ( 61.233s) [main thread ] loguru.hpp:1703 0| atexit
После первого раунда было бы здорово иметь возможность показывать здания с помощью type, вроде livingunit
Не очень понятно, можно ли отрисовать одновременно и лес, и облака, например?
Судя по коду, такое не возможно. Но текстуры, по наличию альфы, подходящие.
Если остается меньше 20 тиков(как я понял, по столько мотает за одно нажатие крайняя левая и правая кнопки), то приходится мотать по одному тику. Можно сделать проверку на близость к границе промотки и двигать "историю" на min(n, 20) тиков, чтобы можно было за одной нажатие откатиться с 16 на 0 тик.
Если убрать фокус с viewer'а, а затем поскролить не фокусируясь на окне, то координаты уходят в бесконечность http://recordit.co/jA7DT6GIKq
После переустановки Win7 перекачал revindviewer 1.3, при запуске выдается
Application popup: rewindviewer.exe - Application Error : The application was unable to start correctly (0xc000007b). Click OK to close the application.
Каталог ресурсов рядом с exe, логов не создается.
Поискал немного по этой ошибке, переставил Microsoft Visual C++ Redistributable, Direct X, драйвер видеокарты, но никаких улучшений. Я так понимаю, что для запуска чего-то еще из библиотек не требуется?
Неправильное перемещение камеры в версии 1.2.2
По вертикали перемещение правильное, но по горизонтали зависит от соотношения высоты и ширины окна.
http://recordit.co/F1ixwtxAiY
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.