new file for suggested deepseek chantes
This commit is contained in:
80
possible-claude.md-changes
Normal file
80
possible-claude.md-changes
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
Implementation: Use a Frame Buffer Object (FBO). Instead of clearing the screen each frame, draw a full-screen quad with a very low alpha (e.g., 0.95) to slowly "dim" previous sweeps.
|
||||||
|
|
||||||
|
Threading for PostgreSQL and LIDAR
|
||||||
|
|
||||||
|
Reading from PostgreSQL (targets) and GDAL (LIDAR terrain) can cause "micro-stuttering" if done on the main render thread.
|
||||||
|
|
||||||
|
The Simulation Thread: Create a background thread that polls the target_data table and updates a thread-safe std::vector<Target>.
|
||||||
|
|
||||||
|
The Render Thread: The OpenGL loop should simply read the latest target positions and render them at 60 FPS (or higher) to keep the "sweep" of the PPI radar smooth.
|
||||||
|
|
||||||
|
Class Hierarchy and PPI SpecificsSince you have four distinct scopes (Chain Home A-Scope, Marine A-Scope, Stationary PPI, and On-boat PPI), a State Pattern is ideal.BaseScope Class: Handles the universal Intensity and Sensitivity variables.AScope Subclass: Implements the horizontal sweep and the "curved waveform" logic for the marine version.PPIScope Subclass: Implements the $360^\circ$ rotation logic. For the "On-boat" version, you will need to pass the boat's own GPS/Heading coordinates (from GDAL/LIDAR) into the shader to offset the target positions.
|
||||||
|
|
||||||
|
Deepseek:
|
||||||
|
|
||||||
|
Mathematical Logic vs. Contextual UnderstandingDeepSeek's Strength: DeepSeek is often more "aggressive" with mathematical optimization. It will likely give you very efficient GLSL code for the $1/R^4$ calculations.The "DeepSeek.md" file: You should rename your instructions to DEEPSEEK.md. DeepSeek models are trained to look for specific instructions in the root directory, similar to how Claude looks for CLAUDE.md.
|
||||||
|
|
||||||
|
Explicit Hardware Prompting
|
||||||
|
|
||||||
|
While Claude is currently aware of the AMD Radeon 780M and Ubuntu 25.10 nuances through our conversation, DeepSeek may require more explicit "reminders" about:
|
||||||
|
|
||||||
|
Mesa Drivers: Remind it to avoid vendor-specific (NVIDIA) extensions.
|
||||||
|
|
||||||
|
C++20 Strictness: DeepSeek sometimes defaults to older C++ standards; ensure your CMakeLists.txt is the first thing it reviews to lock it into your C++20 requirement.
|
||||||
|
|
||||||
|
Coding Style Enforcement
|
||||||
|
|
||||||
|
DeepSeek is generally good at following style guides, but it can be "talkative." You may need to add a directive:
|
||||||
|
|
||||||
|
"Provide code only. Do not explain standard C++ features unless they relate directly to the OpenGL 4.3 Core specification or the Geekom A8 Max hardware."
|
||||||
|
|
||||||
|
Suggested Additions to your .md file
|
||||||
|
|
||||||
|
To help either AI (Claude or DeepSeek) write better code for the PPI scopes, I recommend adding these details to your file:
|
||||||
|
|
||||||
|
PPI Rotation Speed: Specify the "RPM" for the marine traffic control (e.g., 12-24 RPM).
|
||||||
|
|
||||||
|
The "North-Up" vs "Head-Up" display: For the on-boat radar, will the display rotate as the boat turns (Head-Up), or will "North" always be at the top?
|
||||||
|
|
||||||
|
LIDAR Resolution: Define how many LIDAR data points should be converted into "clutter" on the radar screen.
|
||||||
|
|
||||||
|
This setup on your Geekom A8 Max should provide plenty of power to handle both the PostgreSQL queries and the complex OpenGL fragments required for a realistic "vintage" look.
|
||||||
|
|
||||||
|
Proposed Addition: > [THREADING MODEL]
|
||||||
|
|
||||||
|
Main/Render Thread: Handles the OpenGL loop, GLFW input, and glDraw calls. It must remain non-blocking to ensure a smooth 60 FPS sweep.
|
||||||
|
|
||||||
|
Simulation/Data Thread: A background thread that polls the target_data table and updates a thread-safe shared state (using std::mutex or atomics) for the Render thread to consume.
|
||||||
|
|
||||||
|
The PPI Scope Particulars
|
||||||
|
|
||||||
|
Since you are ready to define the two PPI modes (Stationary and On-Boat), adding these "Rules of Behavior" will prevent the AI from guessing.
|
||||||
|
|
||||||
|
Proposed Addition:
|
||||||
|
|
||||||
|
[PPI SCOPE SPECIFICS]
|
||||||
|
|
||||||
|
Persistence (Phosphor Decay): Implement using a Frame Buffer Object (FBO). Do not clear the color buffer every frame; instead, draw a semi-transparent black quad to simulate 1940s-60s CRT decay.
|
||||||
|
|
||||||
|
Marine Traffic Control (Stationary): Fixed location. Targets move relative to the center of the scope.
|
||||||
|
|
||||||
|
Police Boat (On-Boat): The center of the scope is the boat. Integrate boat heading (heading-up display) so the "world" rotates around the observer as the boat turns.
|
||||||
|
|
||||||
|
File Structure & CMake Prep
|
||||||
|
|
||||||
|
To make the two-step CMakeLists.txt generation easier, add a section for organization.
|
||||||
|
|
||||||
|
Proposed Addition:
|
||||||
|
|
||||||
|
[PROJECT STRUCTURE]
|
||||||
|
|
||||||
|
/src: All .cpp source files.
|
||||||
|
|
||||||
|
/include: All .hpp header files.
|
||||||
|
|
||||||
|
/shaders: External .glsl files for vertex and fragment shaders.
|
||||||
|
|
||||||
|
/data: Location for GDAL LIDAR and ENC chart files.
|
||||||
|
|
||||||
|
|
||||||
|
pdated Logic for DeepSeek/Claude SelectionOnce you add these, the transition will be seamless:Claude will be better at setting up the Class Hierarchy (the BaseScope and its derivatives) because it follows the "System Engineer" logic of your persona very well.DeepSeek will be excellent if you need to optimize the GLSL Shaders for the $1/R^4$ logic or the GDAL coordinate transformations, as it tends to be very mathematically rigorous.How to proceed:Go ahead and update your CLAUDE.md with these details. Once you're ready, paste the updated content here (or just tell me it's done), and we can generate that Foundation CMakeLists.txt to get your Geekom A8 Max environment ready for the first "Hello Radar" sweep.
|
||||||
Reference in New Issue
Block a user