HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 27.07.2018, 20:58
CleanLegend
Постоянный
Регистрация: 28.03.2013
Сообщений: 495
С нами: 6908018

Репутация: 213
По умолчанию

Для начала нужно скачать пустой проект SF, это можно сделать в этой теме .

Открываем проект и в начало сразу вставляем:

C++:





Код:
#define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS 1


Для подключения ImGui нам понадобиться каллбеки на present, reset, wndproc.

Present:

C++:





Код:
bool
CALLBACK
Present
(
CONST RECT
*
pSourceRect
,
CONST RECT
*
pDestRect
,
HWND hDestWindowOverride
,
CONST RGNDATA
*
pDirtyRegion
)
{
if
(
SUCCEEDED
(
SF
->
getRender
(
)
->
BeginRender
(
)
)
)
{
SF
->
getRender
(
)
->
EndRender
(
)
;
}
return
true
;
}


Reset:

C++:





Код:
HRESULT CALLBACK
Reset
(
D3DPRESENT_PARAMETERS
*
pPresentationParameters
)
{
return
true
;
}


Wndproc:

C++:





Код:
bool
CALLBACK
WndProcHandler
(
HWND hwd
,
UINT msg
,
WPARAM wParam
,
LPARAM lParam
)
{
return
true
;
}


в mainloop регистрируем их:

C++:





Код:
SF
->
getRender
(
)
->
registerD3DCallback
(
eDirect3DDeviceMethods
::
D3DMETHOD_PRESENT
,
Present
)
;
SF
->
getRender
(
)
->
registerD3DCallback
(
eDirect3DDeviceMethods
::
D3DMETHOD_RESET
,
Reset
)
;
SF
->
getGame
(
)
->
registerWndProcCallback
(
SFGame
::
MEDIUM_CB_PRIORITY
,
WndProcHandler
)
;


Теперь можно перейти к подключению ImGui. Скачиваем и распаковываем в папке с проектом эти файлы:

C++:





Код:
imgui
.
cpp
imconfig
.
h
imgui
.
h
imgui_demo
.
cpp
imgui_draw
.
cpp
imgui_internal
.
h
stb_rect_pack
.
h
stb_textedit
.
h
stb_truetype
.
h


Переходим в папку examples и добавляем в проект 4 файла:

C++:





Код:
imgui_impl_dx9
.
cpp
imgui_impl_dx9
.
h
imgui_impl_win32
.
cpp
imgui_impl_win32
.
h


В начало main.cpp добавляем #include:

C++:





Код:
#include "imgui.h"
#include "imgui_impl_dx9.h"
#include "imgui_impl_win32.h"
#include 
#define DIRECTINPUT_VERSION 0x0800
#include 
#include 
extern
LRESULT
ImGui_ImplWin32_WndProcHandler
(
HWND hWnd
,
UINT msg
,
WPARAM wParam
,
LPARAM lParam
)
;


После успешного добавления файлов, можно перейти к инициализации, она будет проходить в mainloop.Для инициализации нам нужен hwnd окна и device.

C++:





Код:
ImGui
::
CreateContext
(
)
;
ImGuiIO
&
io
=
ImGui
::
GetIO
(
)
;
(
void
)
io
;
ImGui_ImplWin32_Init
(
GetActiveWindow
(
)
)
;
ImGui_ImplDX9_Init
(
SF
->
getRender
(
)
->
getD3DDevice
(
)
)
;


Перейдем к презенту:

C++:





Код:
ImGui_ImplDX9_NewFrame
(
)
;
ImGui_ImplWin32_NewFrame
(
)
;
ImGui
::
NewFrame
(
)
;
if
(
activew
)
{
ImGui
::
Begin
(
"ImGui меню"
,
&
activew
,
ImVec2
(
305
,
160
)
,
0.8f
,
ImGuiWindowFlags_NoCollapse
|
ImGuiWindowFlags_NoSavedSettings
|
ImGuiWindowFlags_NoResize
)
;
{
ImGui
::
Checkbox
(
"Aimbot"
,
&
bAimbot
)
;
ImGui
::
Checkbox
(
"WH"
,
&
bAimbot
)
;
ImGui
::
Checkbox
(
"SpeedHack"
,
&
bAimbot
)
;
ImGui
::
Checkbox
(
"Что-то крутое"
,
&
bAimbot
)
;
}
ImGui
::
End
(
)
;
}
ImGui
::
EndFrame
(
)
;
ImGui
::
Render
(
)
;
ImGui_ImplDX9_RenderDrawData
(
ImGui
::
GetDrawData
(
)
)
;


Добавляем в reset:

C++:





Код:
ImGui_ImplDX9_InvalidateDeviceObjects
(
)
;


В Wndproc:

C++:





Код:
ImGui_ImplWin32_WndProcHandler
(
hwd
,
msg
,
wParam
,
lParam
)
;


Добавляем выгрузку плагина:

C++:





Код:
//Вставляем функцию перед mainloop:
void
CALLBACK
PluginFree
(
)
{
ImGui_ImplDX9_Shutdown
(
)
;
ImGui_ImplWin32_Shutdown
(
)
;
ImGui
::
DestroyContext
(
)
;
}
SF
->
getGame
(
)
->
registerGameDestructorCallback
(
PluginFree
)
;
// в mainloop регистрируем каллбек


В итоге у вас должно получится вот это:

Цитата:
Сообщение от Спойлер  




На момент написания гайда использовалась версия: 1.63
 
Ответить с цитированием

  #2  
Старый 27.07.2018, 21:25
Сэнд
Постоянный
Регистрация: 26.08.2015
Сообщений: 435
С нами: 5639155

Репутация: 108
По умолчанию

как такое же сделать с аси подскажите плс
 
Ответить с цитированием

  #3  
Старый 27.07.2018, 21:26
kawa operand
Постоянный
Регистрация: 15.04.2017
Сообщений: 602
С нами: 4778331

Репутация: 63


По умолчанию

прикинь точно так же
 
Ответить с цитированием

  #4  
Старый 27.07.2018, 21:29
imring
Флудер
Регистрация: 03.08.2016
Сообщений: 2,363
С нами: 5145387

Репутация: 183


По умолчанию

вроде @mkrn делал проект с подключенным имгуи
 
Ответить с цитированием

  #5  
Старый 27.07.2018, 21:33
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Цитата:
Сообщение от imring  

вроде @mkrn делал проект с подключенным имгуи
И без выгрузки Imgui. Кстати, тут тоже самое.
 
Ответить с цитированием

  #6  
Старый 28.07.2018, 00:56
mkrn
Познающий
Регистрация: 19.02.2017
Сообщений: 67
С нами: 4856796

Репутация: 68
По умолчанию

Цитата:
Сообщение от Dark_Knight  

И без выгрузки Imgui. Кстати, тут тоже самое.
это был твой проект с фиксом некоторых багов, соре
 
Ответить с цитированием

  #7  
Старый 28.07.2018, 01:24
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Цитата:
Сообщение от mkrn  

это был твой проект с фиксом некоторых багов, соре
Ага. Пофиксил так, что убрал деиницилизацию imgui
 
Ответить с цитированием

  #8  
Старый 28.07.2018, 03:39
mkrn
Познающий
Регистрация: 19.02.2017
Сообщений: 67
С нами: 4856796

Репутация: 68
По умолчанию

Цитата:
Сообщение от Dark_Knight  

Ага. Пофиксил так, что убрал деиницилизацию imgui
ничего не убирал. Быть может вы путаете мой проект с каким-то другим, сударь?
 
Ответить с цитированием

  #9  
Старый 28.07.2018, 03:55
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Цитата:
Сообщение от mkrn  

ничего не убирал. Быть может вы путаете мой проект с каким-то другим, сударь?
Человек утверждал, что это твой проект. Никакого в нем декстуктора плагина не увидел даже.
 
Ответить с цитированием

  #10  
Старый 28.07.2018, 04:13
mkrn
Познающий
Регистрация: 19.02.2017
Сообщений: 67
С нами: 4856796

Репутация: 68
По умолчанию

Цитата:
Сообщение от Dark_Knight  

Человек утверждал, что это твой проект. Никакого в нем декстуктора плагина не увидел даже.
Софт - ImGUI(https://blast.hk/threads/12387/)

в моём проекте всё точно так же как и здесь, только исправлены параметры ресета и в imgui.cpp там фикс с разрешением экрана связанный. Вся кривизна, до которой в этом проекте можно доебаться, сделана тобой и ебать себе мозг с ней у меня не было ни малейшего желания. Свой проект я делал бы по-другому, а в этом моей целью было только лишь то, чтобы он нормально работал и не крашил из-за того, что дарк_кнуйт решил из презента параметры в ресет ебануть
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...
×

ESCROW ADMIN PANEL

Загрузка...
Загрузка...